SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的就是一个key-value(键值对)在读取数据时可以通过这个键把相应的值取出来),SharedPreferences常用来存储一些轻量级的数据。
1、使用SharedPreferences保存数据方法如下:
//实例化SharedPreference对象,取键值对名字为test
SharedPrefences mySharedPrefences=getSharedPrefences("test",Activity.MODE_PRIVATE);
//实例化SharedPreferences.Editor对象
SharedPreferences.Editor editor = mySharedPreferences.edit();
//用put***(***代表数据类型,如putBoolean即添加布尔数据)的方法保存数据
editor.putString("name","Tom"); editor.putInt("age",25); editor.putBoolean("married",true);
//调用commit()方法添加的数据提交
editor.commit();
//切换到DDMS视图,并点击File Explore切换卡,进入到/data/data/com.eeample.***(工程名).shared_prefs目录下,看到生成的test.xml文件
2、使用SharedPreferences读取数据方法如下:
//实例化SharedPreference对象,取键值对名字为test
SharedPrefences mySharedPrefences=getSharedPrefences("test",Activity.MODE_PRIVATE);
//使用get***(***代表数据类型,如getBoolean即读取布尔数据)
String name=mySharedPrefences.getString("name",""); int age=mySharedPrefences.getInt("age",0); boolean married=mySharedPrefences.getBoolean("married",false);
//首先通过 getSharedPrefences()方法得到SharedPrefences对象,然后调用getString()、getInt()、getBoolean()方法去获取前面存储的姓名、年龄、是否婚否,如果没有相应的值就会使用方法中传入的默认值来替代。
3、//通过PreferenceManager类中的getDefaultSharedPreferences(),方法是一个静态方法,它接受一个Context参数,并自动使用当前程序的包名作为前缀名来命名SharedPreferences文件。
SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = pref.edit();
editor.putString("name","Tom"); editor.putInt("age",25); editor.putBoolean("married",true);
4、 MODE_PRIVATE 私有的,不允许其他程序访问该xml文件。
MODE_WORLD_READABLE 其他程序可以读取
MODE_WORLD_WRITABLE 其他程序可以写