Android使用SharedPreferences进行配置的读写

定义

SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置。它类似Windows系统中的ini配置文件,SharedPreferences的表现方式是一个XML文件,它保存于/data/data//shared_prefs目录下,通过在使用中定义的多种权限来区分访问的限制。

操作模式

SharedPreferences数据的四种操作模式:

Context.MODE_PRIVATE

是默认编辑模式,在这个模式下存储文件只能被当前应用访问,或者被别的应用获取到当前应用Context的实例也可以访问。在该模式下,写入的内容会覆盖原文件的内容

Context.MODE_APPEND

该模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件

Context.MODE_WORLD_READABLE

该模式表示当前文件可以被其他应用读取

Context.MODE_WORLD_WRITEABLE

该模式表示当前文件可以被其他应用写入

Context.MODE_MULTI_PROCESS

该模式在Android4.0以后才出现,表示允许其他的进程访问文件,目前官方不推荐使用MODE_MULTI_PROCESS来代替MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE两种模式。但是MODE_MULTI_PROCESS跨进程访问文件往往是很不靠谱的,因为多进程并发情况,往往会使数据出错。所以其实在多并发情况下是不推荐使用的。

使用SharedPreferences读写数据

// 使用默认的XML配置文件
// SharedPreferences defSharedPreferences =PreferenceManager.getDefaultSharedPreferences(getBaseContext());
 
// 自定义文件名和操作模式
SharedPreferences sharedPreferences =getSharedPreferences("appPreferences", Context.MODE_PRIVATE);
 
// 写
SharedPreferences.Editor editor =sharedPreferences.edit();
editor.putString("KEY_STRING","子云心");
editor.commit();
 
// 读
String valString =sharedPreferences.getString("KEY_STRING", null);
 
// 其它类型的支持
int valInt =sharedPreferences.getInt("KEY_INT", 0);
boolean valBoolean =sharedPreferences.getBoolean("KEY_BOOLEAN", false);
// ……

你可能感兴趣的:(Android入门与基础,android)