Android 中的 SharedPreferences 数据存储详解及实例

0 下载量 189 浏览量 更新于2024-08-29 收藏 124KB PDF 举报
Android 中 SharedPreferences 的使用和实践 SharedPreferences 是 Android 中存储简单数据的一个工具类,可以想象它是一个小小的 Cookie,它通过用键值对的方式把简单数据类型(boolean、int、float、long 和 String)存储在应用程序的私有目录下(data/data/包名/shared_prefs/)自己定义的 xml 文件中。 SharedPreferences 的简介 SharedPreferences 提供一种轻量级的数据存储方式,通过 eidt() 方法来修改里面的内容,通过 Commit() 方法来提交修改后的内容。它可以用于存储一些简单的数据,如用户的设置信息、应用程序的配置信息等。 SharedPreferences 的重要方法 1. contains(String key):检查是否已存在该文件,其中 key 是 xml 文件名。 2. edit():为 preferences 创建一个编辑器 Editor,通过创建的 Editor 可以修改 preferences 里面的数据,但必须执行 commit() 方法。 3. getAll():返回 preferences 里面的所有数据。 4. getBoolean(String key, boolean defValue):获取 Boolean 型数据 5. getFloat(String key, float defValue):获取 Float 型数据 6. getInt(String key, int defValue):获取 Int 型数据 7. getLong(String key, long defValue):获取 Long 型数据 8. getString(String key, String defValue):获取 String 型数据 9. registerOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener):注册一个当 preference 发生改变时被调用的回调函数。 10. unregisterOnSharedPreferenceChangeListener(SharedPreferences.OnSharedPreferenceChangeListener listener):删除当前回调函数。 SharedPreferences.Editor 的重要接口 SharedPreferences.Editor 是用于修改 SharedPreferences 对象的内容的接口,所有更改都是在内存中进行的,必须调用 commit() 方法来提交更改。 1. putBoolean(String key, boolean value):将 Boolean 型数据写入 SharedPreferences 2. putFloat(String key, float value):将 Float 型数据写入 SharedPreferences 3. putInt(String key, int value):将 Int 型数据写入 SharedPreferences 4. putLong(String key, long value):将 Long 型数据写入 SharedPreferences 5. putString(String key, String value):将 String 型数据写入 SharedPreferences 6. remove(String key):删除指定 key 的数据 7. clear():清除所有数据 使用 SharedPreferences 的示例 例如,我们可以使用 SharedPreferences 来存储用户的登录信息: ```java SharedPreferences prefs = getSharedPreferences("user_info", MODE_PRIVATE); Editor editor = prefs.edit(); editor.putString("username", "admin"); editor.putString("password", "123456"); editor.commit(); ``` 然后,我们可以使用 get 方法来获取存储的数据: ```java String username = prefs.getString("username", ""); String password = prefs.getString("password", ""); ``` SharedPreferences 是 Android 中一种非常有用的数据存储方式,它可以帮助我们快速地存储和获取简单的数据。