Android数据存储方式1.SharedPreferences

1.SharedPreferences

SharedPreferences是Android平台上一个轻量级的存储类,主要用来保存一些常用的配置信息。

支持类型如下





这种方式应该是Android中使用起来最简单的读写外部数据的方法了。其采用了Map数据结构来存储数据,可以简单的读取与写入。他的用法基本上和 J2SE(java.util.prefs.Preferences)中的用法一样,以一种简单、 透明的方式来保存一些用户个性化设置的字体、颜色、位置等参数信息。一般的应用程序都会提供“设置”或者“首选项”的这样的界面,那么这些设置最后就可以 通过Preferences来保存,而程序员不需要知道它到底以什么形式保存的,保存在了什么地方。


SharedPreferences settings = getSharedPreferences(PREFS_NAME, 0);
通过名称PREFS_NAME得到一个SharedPreferences,顾名思义,这个Preferences是共享的,共享的范围在同一个package中,这里所说的package和Java中所说的package不同,应该是指在AndroidManifest.xml文件中manifest标签下定义的package属性。


登录用户的用户名与密码为例:

	void  readSharedPreferences(){
		String strName,strPassword;
		SharedPreferences   user = context.getSharedPreferences("user_info",0);
		strName = user.getString("NAME","");
		strPassword = user.getString("PASSWORD","");
	}

	void  writeSharedPreferences(String  strName,String strPassword){
		SharedPreferences user = context.getSharedPreferences("user_info",0);
		user.edit();
		user.putString("NAME", strName);
		user.putString("PASSWORD" ,strPassword);
		user.commit();
	}

	void save(String name, Integer age) {
		SharedPreferences preferences = context.getSharedPreferences("test", Context.MODE_PRIVATE);
		Editor editor = preferences.edit();
		editor.putString("name", name);
		editor.putInt("age", age);
		editor.commit();
	}

数据读取与写入的方法都非常简单,只是在写入的时候有些区别:先调用edit()使其处于编辑状态,然后才能修改数据,最后使用commit()提交修改的数据。实际上SharedPreferences是采用了XML格式将数据存储到设备中,在DDMS中的File Explorer中的/data/data/<package name>/shares_prefs下。以上面的数据存储结果为例,打开后可以看到一个user_info.xml的文件,打开后可以看到:
<?xml version=”1.0″ encoding=”UTF-8″?>
<map>
<string name=”NAME”>moandroid</string>
<string name=” PASSWORD”>SharedPreferences</string>
</map>


SharedPreferences与file存储方式的区别:

SharedPreferences可以存储String等简单的数据类型

而file存储方式就对要存储的数据就没什么限制了,whatever you like


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值