SharedPreferences 是android上的一个比较轻量级的数据存储方式,存储的格式以 key-value对的形式出现,类似于stl中的 pair对。
数据存储在/data/data/PACKAGE_NAME /shared_prefs 目录下面,其中文件名为getSharedPreferences("user_info",0);
中的 user_info.xml
内容为
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="name">rock</string>
<string name="age">21</string>
</map>
在下面的例子中,name作为key出现两次,那后一次的值会覆盖前一次
package MySharePerferences.code;
import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class MainActivity extends Activity {
/** Called when the activity is first created. */
private Button button;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
SharedPreferences info = getSharedPreferences("user_info",0);
info.edit().putString("name","roll").commit();
info.edit().putString("name","rock").commit();
info.edit().putString("age","21").commit();
button = (Button)findViewById(R.id.btn);
button.setOnClickListener( new Button.OnClickListener()
{
@Override
public void onClick(View v )
{
SharedPreferences info = getSharedPreferences("user_info",0);
String name = info.getString("name","noValue");
Toast.makeText(MainActivity.this,name,Toast.LENGTH_SHORT).show();
}
}
);
}
}