赞
踩
SharePreference是一种轻量级的数据存储方式。内部实现是基于XML的Key-Value方式完成的。通常用来存储程序的配置信息。
今天写了一个小Demo,用SharePreference来保存用户的用户名和登录密码,这里只是简单的存储,并没有做加密处理。实际应用时记得加密。
定义SharePreference的四个步骤:
1、通过getSharePreference(key,mode) 获得对象
2、利用ShareLPreference的editor()方法来获取editor对象
3、利用editor的putString()方法将键值对数据存储进去
4、利用editor的commit()方法将数据提交到SharePreference内
举个例子:
- private boolean saveData(){
- SharedPreferences preference = getSharedPreferences("user", Context.MODE_PRIVATE);
- Editor edit = preference.edit();
- <span style="white-space:pre"> </span>edit.putString("userName", loginUserName.getText().toString().trim());
- <span style="white-space:pre"> </span>edit.putString("password", loginPassword.getText().toString().trim());
- <span style="white-space:pre"> </span>edit.commit();
- <span style="white-space:pre"> </span>return true;
- }
这个例子中创建了一个名为user的SharePreference对象,在内部的文件存储名为user.xml
调用SharePreference的几个步骤:
1、通过getSharePreference方法获得SharePreference对象
2、使用对象的getString(key, default value)方式来获得SharePreference中的数据
这里需要注意的是,当SharePreference中没有这个key对应的value的时候,它也不会报错,会返回一个none,所以,建议事先定义一个default value值,方便调试。
举个例子:
- SharedPreferences preference = getSharedPreferences("user", Context.MODE_PRIVATE);
- String userName = preference.getString("userName", "").trim();
- String password = preference.getString("password", "").trim();
当使用周期结束,选择将数据对象删除时,是删除的整一个文件,注意数据存储的位置在data/data/package.name下,所以删除的操作如下:
- File file= new File("/data/data/"+getPackageName().toString()+"/shared_prefs","user.xml");
- if(file.exists()){
- file.delete();
- }
注意new File(path, file name) 前一个参数是文件路径,后一个参数是文件名。在前面已经说过,之前我们创建的SharePreference 对象的名称是user.xml
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。