Preferences

Preferences 是一种轻量级的存储方式,主要是存放一些配置之类的信息;以键值对的形式保存在手机内存中,作为一种xml系统文件保存。所以,在数据量不是很大的情况下是可以用Preferences来保存你所需要的键值对信息的;常见的用法是用来保存{用户名,密码}等的信息;举个例子:在我正在做的项目中,需要用到请求服务器返回的数据,通过json解析处理后得到{key, value}的数据,可能是因为方便存取,所以把它们都用Preferences来处理;但是,项目负责人提醒我,手机本身的内存是很小的,而我们请求回来的是一坨大数据,虽然Preferences处理方便,但是,手机内存减少了,程序运行速度会变慢;所以得改用其他的存储方式将数据存在sdcard上。

一堆废话之后,让我来介绍下Preferences的用法:

1、获取Preferences对象:SharedPreferences settings = getSharedPreferences(Config.CONFIG_NAME, Context.MODE_PRIVATE);

第一个参数是打开的文件名称(自定义),如你想把你的数据保存在wokao.xml文件里,wokao就是你定义的文件名;第二个参数为访问Preferences的模式:MOED_PRIVATE:私有模式,只能由创建者访问;MODE_WORLD_READABLE:允许所以应用读取;MODE_WORLD_WRITEABLE:允许所以应用写;我们一般使用MOED_PRIVATE模式,只允许本应用读写此文件;

2、读取Preferences文件的内容:在第一步获得Preferences对象之后,我们才能获取xml文件内容;

如:String res = settings.getString("nihao");我们不需要对文件做什么格式转换的操作,直接根据key值读取value值就行了,因为在键值对中,key值是独一无二的标识;根据value值的类型,可以使用如getInt()等方法来获得value值;

3、更新Preferences文件内容;

如:setting.edit().putString("nihao", "wo hen hao").commit();更新Preferences的内容必须使用edit()和commit()方法,具体解释记不起来了,你们可以上网查;{"nihao", "wo hen hao"}键值对如果在Preferences文件中不存在key = “nihao”, 会把键值对加入文件,如果存在key = "nihao",系统会把value值修改为value =  "wo hen hao";

至此,Preferences的操作已完成;应用建立的Preferences的xml文件会一直保存在手机系统的data/data/com.preferences/ shared-prefs/目录下,伴随应用被卸载而删除,所以说,使用Preferences保存数据是占内存的,如果数据量大,不推荐使用。

转载于:https://my.oschina.net/u/1252598/blog/158355

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值