SharedPreferences存储

时间:2021-11-01 09:55:24

*通过getSharedPreferences()方法获得SharedPreferences对象

SharedPreferences pref = getShaedPreferences(“key”, Context.MODE_PRIVATE);

*通过SharedPreferences的getXxx()方法获得之前保存的值

Xxx value = pref.getXxx(“key”, def-value);

*通过SharedPreferences的edit()方法获得Editor对象

SharedPreferences.Editor editor = pref.edit();

*通过Editor的putXxx()方法放置键-值对

editor.putXxx(“key”, value);

*通过Editor的commit()方法保存数据

editor.commit();

例:

// 获取SharedPreferences对象
// 文件路径为 /data/data/包名/shared_prefs/pref.xml
// 只能在root权限下才能查看
pref = getSharedPreferences(
"pref", // 保存到外部存储的SharedPreference文件名 (pref.xml)
Context.MODE_PRIVATE); // 默认操作模式(私有的 不公开 其他应用不能访问) // 数据写入SharedPreference
// 获取SharedPreferences的编辑器(Editor)
// 只能通过Editor才能写入SharedPreferences数据
SharedPreferences.Editor editor = pref.edit();
editor.putString("name", "zhangsan");
editor.putInt("age", 23);
editor.putFloat("weight", 73.2f);
editor.commit(); // 不要忘记提交 // 从SharedPreference读取数据
// 不需要Editor
String name = pref.getString("name", ""); // 当读取不到数据时返回默认值
int age = pref.getInt("age", 0);
float weight = pref.getFloat("weight", 0f);
Toast.makeText(MainActivity.this,
"name: " + name + ", age: " + age + "weight: "+ weight,
Toast.LENGTH_LONG).show();