【Androidstudio】sharedpreference存储方式的使用

Android的四大数据存储方式之一“SharedPreference”,其他三个分别是SQLite、Content Provider 和 File

一般使用SharedPreference来存储应用程序的配置信息。它一般存储在应用程序的私有存储区,文件权限是私有的。也就是说只能供写入者读取。它使用键/值(NVP机制)来存储数据。支持的数据类型(boolean、int、float、long和String)。它存储在应用程序的私有目录下(data/data/包名 /shared_prefs/)自定义的XML文件中。

 

1.创建SharedPreference

SharedPreference myPreference=getSharedPreferences("myPreference", Context.MODE_PRIVATE);

第一个参数:SharedPreference 的名称

第二个参数:打开的方式,一般有两个值(0和MODE_PRIVATE)我们一般用MODE_PRIVATE

 

2.写入,更新SharedPreference

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

//获取SharedPreferences对象

SharedPreference myPreference=getSharedPreferences("myPreference", Context.MODE_PRIVATE);

 

//像SharedPreference中写入数据需要使用Editor

Editor editor = myPreference.edit();

 

//存入键值对数据,注意此处的put[type]("key",value);

editor.putString("STRING_KEY""string");

editor.putInt("INT_KEY", 0);

editor.putBoolean("BOOLEAN_KEY"true);

 

//提交保存

//editor.apply();

editor.commit();

 

提示:

(1)apply和commit都是提交保存,区别在于apply是异步执行的,不需要等待。不论删除,修改,增加都必须调用apply或者commit提交保存。

(2)关于更新:如果已经插入的key已经存在。那么将更新原来的key。

(3)应用程序一旦卸载,SharedPreference也会被删除。

 

3.读取

SharedPreference myPreference=getSharedPreferences("myPreference", Context.MODE_PRIVATE);
//读取这里主要用到了get[type]("key",defaultvalue),第一个参数是要获取的key,第二个参数是默认值,是当没有为这个key保存值的时候使用。
String name=preferences.getString("name", "defaultname");

String age=preferences.getString("name", "暂无");
String age=preferences.getInt("age", 0);
String age=preferences.getBoolean("isRead", false);

 

 

4.检索

 

SharedPreference myPreference=getSharedPreferences("myPreference", Context.MODE_PRIVATE);
//检查当前键是否存在
boolean isContains=myPreference.contains("key");

//使用getAll可以返回所有可用的键值
//Map allMaps=myPreference.getAll();

 

你可能感兴趣的:(Androidstudio)