读书笔记 疯狂Android讲义 第八章数据存储与IO之SharedPrefrences

应用程序中有一些格式比较简单的数据需要保存,例如普通的字符串,标量类型的值啦等等,用来判断程序中某个状态或者与其他应用共享数据啦,这时候使用数据库sqllite、或者文件有点儿大材小用。故Android提供了SharedPreferences来进行保存

简单了解

SharedPreferences保存的数据主要类似于配置信息格式的数据,所以保存的数据类型是简单的Key-Value对。但是SharePreferences接口本身没有提供写入数据的能力,但是可以通过调用SharedPreferences的内部接口edit()来获取它的Editor对象,Editor对象提供相关方法来向SharedPreference写入数据。

SharedPreferences 本身为一个接口,程序无法直接创建SharedPreferences 实例,只能通过Context提供的getSharedPreferences (String name,int mode)方法来获取SharedPreferences 实力。该方法第二个参数Mode支持如下几个值:

Context.MODE_PRIVATE 指定该SharedPreferences 数据只能被本应用数据读写。

Context.MODE_WORLD_READABLE  指定该SharedPreferences 数据能被其他应用读,但是不能写。

Context.MODE_WORLD_WRITEABLE 指定该SharedPreferences 数据可以被其他应用读写。

相关方法介绍:

SharedPreferences 

boolean contains(String key);判断SharedPreferences 是否包含特定key的数据;

Map<String, ?> getAll();获取SharedPreferences 数据里全部的key-value对;

Editor edit();为外部返回Editor对象;

boolean getXxx(String key,xxx defValue);获取SharedPreferences数据中指定key对应的value,如果该key不存在,返回默认的defValue。目前具备的方法如下:

boolean getBoolean(String key, boolean defValue);

float getFloat(String key, float defValue);

long getLong(String key, long defValue);

int getInt(String key, int defValue);

Set<String> getStringSet(String key, Set<String> defValues);

String getString(String key, String defValue);

SharedPreferences 内部接口editor()返回Editor对象,Editor提供如下方法写入数据:

Editor remove(String key);删除SharedPreferences 里指定key的数据

Editor clear();清空SharedPreferences 里的全部数据

boolean commit();当Editor编辑完成后,调用该方法提交修改。

void apply();

Editor putString(String key, String value);各种putXxx方法,用于向SharedPreferences 里存入指定key对应的数据。

Editor putStringSet(String key, Set<String> values);

Editor putInt(String key, int value);

Editor putLong(String key, long value);

Editor putFloat(String key, float value);

Editor putBoolean(String key, boolean value);


Demo下载:

百度云盘:http://pan.baidu.com/s/1cgDNzw  点击下载




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值