《Android应用开发》
数据存储及IO
Android 数据存储及IO
1 SharedPreferences
2 File存储
3 SQLite数据库
4 ContentProvider
SharedPreferences
• SharedPreferences保存的数据主要是类
似配置信息格式的数据,也就是主要是
key-value对。
SharedPreferences接口提供如下访问数据的方法 :
boolean contains(String key) :判断是否包含特
定key的数据
abstract MapgetAll() :获取全部的
key-value对
boolean getXxx(String key,xxx defaultValue) :
获取指定key的value
SharedPreferences与Editor
• SharedPreferences接口本身没有提供写入数
据的能力,通过SharedPreferences的内部接
口实现。SharedPreferences调用edit()方法
获取它对应的Editor对象,Editor提供了方法
向sharedPreferences写入数据。
SharedPreferences.Editor clear():清空
SharedPreferences中的数据。
SharedPreferences.Editor putXxx(String key,
xxx Value)向SharedPreferences存入指定key对应的
数据。
Boolean commit() :当Editor编辑完成后,调用该方
法提交修改。
SharedPreferences与Editor
• SharedPreferences本身是一个接口,程序无
法直接创建SharedPreferences实例,只能通
过Context提供的
getSharedPreferences(String name,int
mode)获取SharedPreferences实例。
Mode参数常用值:
Context.MODE_PRIVATE: SP中的数据只能被本应
用程序读写。
Context.MODE_WORLD_READABLE: SP中的数据
能被其他应用程序读,但丌能写。
Context.MODE_WORLD_WRITEABLE: SP中的数据
能被其他应用程序读、写。
示例1
SharedPreferences sp;
sp =
getSharedPreferences(SP_INFO
S, MODE_PRIVATE);
SharedPreferences.Editor editor
= sp.edit();
editor.putString(USERID, uid);
editor.putString(PASSWORD,
pwd);
mit();
读取其他的SharedPreferences
当应用程序创建的SharedPreferences指定了可被其他应
用访问的权限时,该SharedPreferences中的数据可以被
其他程序读取。
在应用程序中访问其他程序创建的SharedPreferences的
步骤:
1、创建其他程序对应的Context ;
2、调用其他应用的Context的
getSharedPreferences(String name,int mod