关闭

Android 利用SharedPreferences进行数据存储和读写

标签: android
115人阅读 评论(0) 收藏 举报
分类:

SharedPreferences 是使用键值对的方式来存储数据的。也就是说当保存一条数据的时候,需要给这条数据提供一个对应的键,这样在读取数据的时候就可以通过这个键把相应的值取出来。而且 SharedPreferences 还支持多种不同的数据类型存储,如果存储的数据类型是整型,那么读取出来的数据也是整型的,存储的数据是一个字符串,读取出来的数据仍然是字符串。

SharedPreferences 是使用键值对的方式来存储数据的。也就是说当保存一条数据的时候,需要给这条数据提供一个对应的键,这样在读取数据的时候就可以通过这个键把相应的值取出来。而且 SharedPreferences 还支持多种不同的数据类型存储,如果存储的数据类型是整型,那么读取出来的数据也是整型的,存储的数据是一个字符串,读取出来的数据仍然是字符串。

存储

1.Context 类中的 getSharedPreferences()方法

此方法有两个参数,第一个是指定文件名,SharedPreferences 文件都是存放在/data/data/《包名》/shared_prefs/目录下的。第二个参数是模式,有MODE PRIVATE 和MODE MUTIL PROCESS,前者是只允许当前程序对这个SharedPreferences文件进行读写,后者是允许多个程序对其进行读写。

2。Activity 类中的 getPreferences()方法

只接受一个参数,就是模式,使用该方法会自动将当前活动类名作为文件名。

3.PreferenceManager 类中的 getDefaultSharedPreferences()方法

这是一个静态方法,它接收一个 Context 参数,并自动使用当前应用程序的包名作为前缀来命名 SharedPreferences 文件。

了解了有获取对象的方法后,就可以来看如何存储对象了,分为三步

1.调用SharePreference.edit()方法来获取一个SharedPreferences.Editor对象。

2.利用Editor对象添加数据到文件

3.Editor.commit()确认提交

具体代码:

SharedPreferences.Editor editor = getSharedPreferences("data",
MODE_PRIVATE).edit();
editor.putString("name", "Tom");
editor.putInt("age", 28);
editor.putBoolean("married", false);
editor.commit();

读取数据

读取数据非常简单,只需要获取一个SharedPreferences对象就可以了(该对象传入哪个文件名,就读取哪个文件),使用该对象的get方法,get方法有两个参数,第一个是键,第二个是如果读取失败返回的值。下麦是代码举例

SharedPreferences pref = getSharedPreferences("data",
MODE_PRIVATE);
String name = pref.getString("name", "");
int age = pref.getInt("age", 0);
boolean married = pref.getBoolean("married", false);
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    最新评论