«

持久化存储--2、SharedPreferences存储

时间:2024-3-2 16:57     作者:韩俊     分类: Html+Css


SharedPreferences 是使用键值对的方式来存储数据,当保存一条数据时,需要给这条数据提供对应的键,读取数据是可以通过对应的键把相应的值取出来。和JSON很像(JavaScript 对象表示法(JavaScript Object Notation),用于存储和交换文本信息的语法。);使用SharedPreferences保存JSON数据很方便。

3种获取SharedPreferences 对象的方法:

Context类中的getSharedPrefences()方法,传入参数文件名和操作模式
Activity类中的getPrefences()方法,自动把当前活动类名作为文件名
PreferenceManager 类中的 getDefaultSharedPreferences()方法,静态方法,把当前包名作为文件名

向SharePreferences文件中存储数据

调用 SharedPreferences 对象的 edit()方法来获取一个 SharedPreferences.Editor 对象
向 SharedPreferences.Editor 对象中添加数据
调用 commit()方法将添加的数据提交,从而完成数据存储操作

保存数据:第2种获取SharedPreferences 对象的方法
SharedPreferences 对象–SharedPreferences.Editor 对象–SharedPreferences.Editor 对象中添加数据–commit()方法提交

SharedPreferences.Editor editor = getPreferences(MODE_PRIVATE).edit();
                editor.putString("name", "Tom");//key,value
                editor.putInt("age", 28);
                editor.putBoolean("married", false);
                editor.commit();

得到的结论:数据保存到MainActivity.xml中

导出的数据是:

<?xml version='1.0' encoding='utf-8' standalone='yes' ?>

<map>

   <string name="name">Tom</string>

   <boolean name="married" value="false" />

   <int name="age" value="28" />

</map>

恢复数据:
SharedPreferences 对象–get 方法用于对存储的数据进行读取

SharedPreferences pref = getSharedPreferences("MainActivity", MODE_PRIVATE);
                String name = pref.getString("name", "");
                int age = pref.getInt("age", 0);
                boolean married = pref.getBoolean("married", false);
                Log.d("MainActivity", "name is " + name);
                Log.d("MainActivity", "age is " + age);
                Log.d("MainActivity", "married is " + married);

log出的数据为:

标签: javascript html css

热门推荐