一、SharedPreferences应用场景
SharedPreferences 用于保存参数;
内部是以XML文件进行保存的,位于/data/data/package/shared_prefs目录中;
二、SharedPreferences核心代码
1.保存
SharedPreferences preference = context.getSharedPreferences("xiazdong", Context.MODE_);//获得SharedPreferences Editor editor = preference.edit();//获得编辑器 editor.putString("name", "value");//放入字符串型参数 editor.putInt("name", value);//放入整形参数 editor.commit(); //提交
2.读取
SharedPreferences preference = context.getSharedPreferences("filename", Context.MODE_PRIVATE); String name = preference.getString("name", "defaultValue");//获得名为name的字符串型参数,否则值为defaultValue int age = preference.getInt("name", defaultValue);
由于此种方法非常简单,此处就不用实例讲解了;
三、内部原理
前面我们说到,sharedPreferences内部是以XML的形式存放在/data/data/shared_prefs目录中,此处我们来验证这一点;
如果我们执行如下语句:
SharedPreferences preference = context.getSharedPreferences("xiazdong", Context.MODE_PRIVATE); Editor editor = preference.edit(); editor.putString("name", "xiazdong"); editor.putInt("age", 20); editor.commit();
得到的XML文件如下:
SharedPreferences preference = context.getSharedPreferences("xiazdong", Context.MODE_PRIVATE); Editor editor = preference.edit(); editor.putString("name", "xiazdong"); editor.putInt("age", 20); editor.commit();
得到的XML文件如下:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <string name="name">xiazdong</string> <int name="age" value="20" /> </map>