目录
1.SharedPreferences
1.1 概念
1.sharedPreferences是Android平台上一个轻量级的储存类,本质是一个xml文件,通过类似key/value键值对的形式存放信息。 2.主要用于储存一些应用程序的配置参数,例如用户名、密码、自定义参数的设置等。 3.存放数据的文件位于程序私有目录中,即data/data/<packagename>/shared_prefs文件夹中 4.value可以为Float、Int、Long、Boolean、String、StringSet类型数据。 5.储存的数据具有持久性 1.2 操作模式
操作模式有4种,如下所示:
MODE_APPEND 追加方式储存 MODE_PRIVATE 私有方式储存,其他应用无法访问 MODE_WORLD_READABLE 可被其他应用读取 MODE_WORLD_WRITEABLE 可被其他应用写入 1.2 储存数据
使用SharedPreferences类储存数据时,使用的方法如下所示:
getSharedPreferences(String fileName,int mode) 此方法用于获取实例对象,并且对象本身只能获取数据,不能
对数据进行储存和修改,需要获取到可编辑的Editor对象
fileName:文件名
mode:操作模式
SharedPreferences.Editor 用于获取到可编辑的Editor对象 putXXX() 通过键值对形式储存数据 commit() 提交修改 首先需要调用getSharedPreferences(String name,int mode)方法获取实例对象,该对象本身只能获取数据,不能对数据进行储存和修改,因此需要调用SharedPreferences的edit()方法获取到可编辑的Editor对象,最后通过Editor对象的putString()方法和putInt()方法进行储存数据。实例代码如下:
//获取sp对象,参数data表示文件名,MODE_PRIVATE表示文件操作模式 SHaredPreferences sp = context.getSharedPreferences("data",Context.MODE_PRIVATE); SharedPreferences.Editor editor = sp.edit(); //获取编辑器 editor.putString("name","zhangsan"); editoy.putInt("age",20); editor.commit(); //提交修改
如果需要删除数据,则只需要调用Editor的remove(String key)方法或者clear()即可。
1.3 获取数据
只需要获取到SharedPreferences对象,然后通过该对象的getXXX()方法即可获取到相应的key的值,如:
SharedPreferences sp = context.getSharedPreferences("data",Context.MODE_PRIVARE); //获取用户名 第二个参数为缺省值,如果sp中不存在该key,将返回缺省值 String data = sp.getString("name","");
1.4 以xml文件格式储存数据
数据格式如下所示:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <string name="account">luckyliuqs</string> <string name="password">123456</string> </map>