使用步骤:

1、得到SharedPreferences对象

2、调用SharedPreferences对象的edit()方法来获取一个SharedPreferences.Editor对象。

3、向SharedPreferences.Editor对象存储key-value键值对数据。

4、调用commit方法将添加的数据提交。

详细过程:

1、得到SharedPreferences对象

2、调用SharedPreferences对象的edit()方法来获取一个SharedPreferences.Editor对象。

SharedPreferences.Editor editor = getSharedPreferences(“data”,MODE_PRIVATE).edit();

3、向SharedPreferences.Editor对象中添加数据。

editor.putString(“name”,”Lily”); //以键值对形式存储 

editor.putInt(“age”,”20”); //以键值对形式存储 

editor.putBoolean(“married”,false); //以键值对形式存储

4、调用commit方法将添加的数据提交。

editor.commit();

同时Edit还有两个常用的方法:

editor.remove(String key) :下一次commit的时候会移除key对应的键值对

editor.clear():移除所有键值对

 



获取SharedPreferences的两种方式:



1 调用Context对象的getSharedPreferences()方法



2 调用Activity对象的getPreferences()方法



两种方式的区别:



调用Context对象的getSharedPreferences()方法获得的SharedPreferences对象可以被同一应用程序下的其他 ​​组件​​共享.



调用Activity对象的getPreferences()方法获得的SharedPreferences对象只能在该Activity中使用.



 



SharedPreferences的四种操作模式:



Context.MODE_PRIVATE



Context.MODE_WORLD_READABLE



Context.MODE_WORLD_WRITEABLE



Context.MODE_APPEND/Context.MODE_MULTI_PROCESS



 



Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容



Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件.



MODE_WORLD_READABLE:表示当前文件可以被其他应用读取.



MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入.



Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件.



Context.MODE_MULTI_PROCESS:sdk2.3后添加的选项,当多个进程同时读写同一个SharedPreferences时它会检查文件是否修改。



 



将数据保存至SharedPreferences:


SharedPreferences preferences=getSharedPreferences("user",Context.MODE_PRIVATE);




Editor editor=preferences.edit();




String name="xixi";




String age="22";




editor.putString("name", name);




editor.putString("age", age);




editor.commit();



从SharedPreferences获取数据:



SharedPreferences preferences=getSharedPreferences("user", Context.MODE_PRIVATE);




String name=preferences.getString("name", "defaultname");




String age=preferences.getString("age", "0");