一、Android SharedPreferences的简介
SharedPreferences是一种轻型的Android数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。比较经典的使用方式例如用户输入框对过往登录账户的存储。实现SharedPreferences存储的步骤如下:
1、根据Context获取SharedPreferences对象2、利用edit()方法获取Editor对象。3、通过Editor对象存储key-value键值对数据。4、通过commit()方法提交数据。
二、SharedPreferences和Editor 的关系
1、SharedPreferences
public abstract SharedPreferences getSharedPreferences (String name, int mode)
方法得到一个sharedpreferences对象,参数name是preference文件的名字,mode则是方式,默认为0。
2、Editor
Editor可用于SharedPreferences数据的添加,删除,修改和查询。
Public abstract SharedPreferences.Editor putString (String key,String value)
通过执行commit()或是apply()方法,将会应用更改。
三、SharedPreferences的代码片段
// 存储sharedpreferencespublic void setSharedPreference() {sharedPreferences = getSharedPreferences("itcast", Context.MODE_PRIVATE);Editor editor = sharedPreferences.edit();editor.putString("username", text1.getText().toString());editor.putInt("password", getpw());editor.commit();// 提交修改}// 清除sharedpreferences的数据public void removeSharedPreference() {sharedPreferences = getSharedPreferences("itcast", Context.MODE_PRIVATE);Editor editor = sharedPreferences.edit();editor.remove("username");editor.remove("password");editor.commit();// 提交修改}// 获得sharedpreferences的数据public void getSahrePreference() {String username = sharedPreferences.getString("username", "");int password = sharedPreferences.getInt("password", 0);String str = String.valueOf(password);text1.setText(username);text2.setText(str);}