Android开发之SharedPreferences详解

来源:互联网 发布:海关数据编码查询 编辑:程序博客网 时间:2024/06/10 17:52

一、概述

利用SharedPreferences保存数据是Android本地保存数据的方式之一。SharedPreferences主要用于保存基本类型的数据,例如int、long、string、Boolean等,并且保存数据时都以键值对的形式进行保存。值得注意的是,在应用程序结束运行时,SharedPreferences中保存的数据仍旧会存在。

在项目开发中,有两种方式获取SharedPreferences对象,现在简要介绍如下:

1)getSharedPreferences()方法:如果需要很多个共享文件,他们之间可以用名称来区分的话,必须使用该方法。方法中的第一个参数就是共享文件的名称。

2)getPreferences()方法:如果应用程序只需要一个共享文件,可以使用此方法。因为共享文件只有一个,所以,不需要提供文件名称了。


二、插入值的方法

在开发过程中我们需要向SharedPreferences共享文件中插入键值对,此时需要按如下的步骤进行数值的插入:

1)调用SharedPreferences类的edit()方法获得Editor对象;

2)调用putXXX()方法插入键值对;

3)使用commit()方法提交。

下面将附上一个简单的实例,依照上述方法,生成一个SharedPreferences对象,并向其中插入一些键值对。

SharedPreferences sp = getSharedPreferences("sp1", MODE_PRIVATE);// 获得私有类型的SharedPreferences

Editor editor = sp.edit();// 获得Editor对象

editor.putString("name", "wangzunkuan");// 增加用户名

editor.putString("sex", "male");// 增加密码

editor.commit();// 确认提交

上面的代码中在生成SharedPreferences对象时需要写入两个参数:第一个参数即为该公共文件的名称,第二个参数为该公共文件的数据操作模式。SharedPreferences的数据操作模式主要有以下4种:

MODE_PRIVATE:私有模式(默认操作模式),该文件中的数据都是私有数据,只能被应用本身访问。另外,在该模式下写入的内容会覆盖原文件的内容。

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

MODE_WORLD_READABLE:表示当前文件可以被其他应用读取;

MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入。

注意,MODE_WORLD_READABLE和MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。


二、获取值的方法

SharedPreferences 中获取数据很简单,只要实例化一个SharedPreferences 对象,然后调用该对象的getXXX()方法即可。实例代码如下

SharedPreferences sp =getSharedPreferences("mrsoft",MODE_PRIVATE); SharedPreferences

String name = sp.getString("nem", "mr");

String sex = sp.getString("sex", "001");

上面的getXXX()方法中有两个参数,其中参数一表示要查看的键值对的键值,第二个参数则表示如该值不存在时的系统默认值。


总结:本文主要讲述了SharedPreferences的概念、特点和运用SharedPreferences在本机进行数据存取的主要操作步骤和重点参数分析。希望能给想要学习SharedPreferences的朋友们带来一些帮助。





0 0