/* SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据, 通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。 SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。 实现SharedPreferences存储的步骤如下: 1、根据Context获取SharedPreferences对象; 2、利用edit()方法获取Editor对象; 3、通过Editor对象存储key-value键值对数据; 4、通过commit()方法提交数据; SharedPreferences对象与SQLite数据库相比,免去了创建数据库,创建表,写SQL语句等诸多操作, 相对而言更加方便,简洁。但是SharedPreferences也有其自身缺陷,比如其职能存储boolean,int,float,long和String五种简单的数据类型, 比如其无法进行条件查询等。所以不论SharedPreferences的数据存储操作是如何简单, 它也只能是存储方式的一种补充,而无法完全替代如SQLite数据库这样的其他数据存储方式。 */ /*工程生成的文件内容如下所示: <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <string name="userName">demo</string> <string name="passWord">demo</string> <string name="remember_Me">false</string> </map> */ public class SharedPreferencesHelper { private Context m_context; private SharedPreferences m_sharepref; private SharedPreferences.Editor m_editor; public SharedPreferencesHelper(Context context, String name) {// 获取SharedPreferences对象 m_context = context; m_sharepref = m_context .getSharedPreferences(name, Context.MODE_PRIVATE);// name文件名:*.xml m_editor = m_sharepref.edit(); } public void setStringValue(String key, String value) {// 存入String数据 m_editor.putString(key, value); m_editor.commit(); } public String getStringValue(String key, String defValue) {// 获取String数据 return m_sharepref.getString(key, defValue); } public void setIntValue(String key, int value) {// 存入Int数据 m_editor.putInt(key, value); m_editor.commit(); } public int getIntValue(String key, int defValue) {// 获取Int数据 return m_sharepref.getInt(key, defValue); } public void setBooleanValue(String key, boolean value) { m_editor.putBoolean(key, value); m_editor.commit(); } public boolean getBooleanValue(String key, boolean defValue) { boolean b = false; try { b = m_sharepref.getBoolean(key, defValue); } catch (Exception e) { String str = m_sharepref.getString(key, String.valueOf(defValue)); if (str.equals("true")) { b = true; } else { b = false; } } return b; } }
使用:
// 添加Activity到堆栈 AppManager.getAppManager().addActivity(this); // App String AppString.init(m_context); // 全局共享文件 String name = AppString.getAppName(); m_sharepref = new SharedPreferencesHelper(m_context, name);
m_sharepref.getStringValue("monitor", "");完!!!