数据存储方式之一 SharedPreference指南

1.简介:Preference是一个轻量级的数据存储方法。只能存基本的数据类型和字符串并采用键值对的方式。比较适合一条数据只有一个值。如果像一条数据有多个值还是推荐数据库。

存储数据会生成xml文件保存在/data/data/<packagename>/shared_prefs路径下。

2.获取Preference对象:

主要通过Context.getSharedPreferences(String name,int mode)方法获得。

SharedPreferences pre = getSharedPreferences("my_share",Context.MODE_PRIVATE);

其中,name是文件名称,不需要添加xml后缀,系统会自动添加。

mode主要有如下几种模式:

MODE_PRIVATE:私有;

MODE_APPEND:如果文件已经存在,就写在文件里,而不覆盖它,经Demo验证,无论写与不写,如果新建一个已存在的preference,都不会覆盖,而只是在已存在文件里添加。

MODE_WORLD_READABLEMODE_WORLD_WRITEABLE对外部应用可读和可写。Android已经不推荐这种mode,更推荐使用ContentProvider。

3.存数据:

存数据数是通过SharedPreferences的一个内部接口SharedPreferences.Editor来实现的。这个接口还可以对数据进行删除和清除操作。

代码:

			Editor editor=pre.edit();
			editor.putString("data","Preference");
			editor.putInt("aaa", i);
			editor.commit();
注意:①先获得editor对象。②数据用键值对存储。 ③最后切记调用commit()方法。

4.取数据:

通过SharedPreferences类对象pre的getInt(key)  getString(key)  getFloat(key)获得。

注意:在getString(key)或remove(key)时,若是不存在那个key,不会报错,只是该方法不起作用。

5.SharedPreferences.Editor说明

不但可以保存数据,还可以对数据删除和清除

clear():清除所有值

remove(String key):删除该键对应的值。

清除或删除操作,最后都需要调用commit()方法。

对整个xml文件删除:

File file= new File("/data/data/"+getPackageName().toString()+"/shared_prefs","文件名.xml");
if(file.exists()){
    file.delete();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值