Android存储-SharedPreferences

来源:互联网 发布:icc 文件 mac 编辑:程序博客网 时间:2024/06/14 17:39

Android中SharedPreferences的使用

以下是Android官方文档给出的解释:

SharedPreferences 类提供了一个通用框架,以便您能够保存和检索原始数据类型的永久性键值对。 您可以使用 SharedPreferences 来保存任何原始数据:布尔值、浮点值、整型值、长整型和字符串。 此数据将跨多个用户会话永久保留(即使您的应用已终止亦如此)

简而言之,SharedPreferences 类提供了一个基于键值对的存储简单数据的方法,并且存储的数据是可以跨应用访问的。

获取SharedPreferences对象的两种方式:

context.getSharedPreferences(String name, int mode)PreferenceManager.getDefaultSharedPreferences(context)

两种方式的区别在于第一种需要自己指定文件名和访问模式,第二种使用默认的值。

参数解释:
name : 存储数据的文件的名字
mode:访问模式,可选的值有

Context.MODE_PRIVATE 私有方式,代表该文件是私有数据,只能由本应用访问Context.MODE_APPEND 追加方式,首先检查文件是否存在,存在则追加内容,否则新建文件Context.MODE_WORLD_READABLE 现在已经不推荐使用,表示当前文件可被其他应用读Context.MODE_WORLD_WRITEABLE 现在已经不推荐使用,表示当前文件可被其他应用写

存储数据

// 获取 Editor对象,通过此对象存储数据SharedPreferences.Editor editor = preferences.edit();editor.putString(key, value);// 最后需要调用 commit 方法,才能将数据最终存入文件editor.commit();

读取数据

// 读取数据较存储数据就很简单了,只需要提供数据的key值,当找不到该key对应的数据时,就会返回 defValue 默认值preferences.getString(key, defValue)

当存储或读取其他类型的数据时,与以上基本相同。SharedPreferences类常用来存储应用的设置,以及所有适用于以键值对结构存储的数据。