在安卓中对数据的存储有了SQLite数据库存储数据,在本次学习的是对文件的存储。利用SharedPerences将数据存储在文件中。
实战:本次学习准备的实战是总结性写了一下数据内部存储的读写、文件内部存储的读写、在SD卡中的读写。
一、 简单存储SharedPreferences
1、简单存储简介
- SharedPreferences是一种轻量级的数据保存方式。
- 通过SharedPreferences可以将NVP(Name/Value Pair,名称/值对)保存在Android的文件系统中,而且SharedPreferences完全屏蔽的对文件系统的操作过程。
- 开发人员仅是通过调用SharedPreferences对NVP进行保存和读取。
2、应用程序间数据共享的三种访问模式
- SharedPreferences不仅能够保存数据,还能够实现不同应用程序间的数据共享
- SharedPreferences支持三种访问模式
- 私有(MODE_PRIVATE):仅有创建程序有权限对其进行读取或写入
- 全局读(MODE_WORLD_READABLE):不仅创建程序可以对其进行读取或写入,其他应用程序也读取操作的权限,但没有写入操作的权限
- 全局写(MODE_WORLD_WRITEABLE):创建程序和其他程序都可以对其进行写入操作,但没有读取的权限
3、SharedPreferences创建和使用步骤
1).在使用SharedPreferences前,先定义SharedPreferences的访问模式
- 下面的代码将访问模式定义为私有模式
public static int MODE = MODE_PRIVATE;
- 有的时候需要将SharedPreferences的访问模式设定为即可以全局读,也可以全局写,这样就需要将两种模式写成下面的方式
public static int MODE = Context.MODE_WORLD_READABLE + Context.MODE_WORLD_WRITEABLE;
2).定义SharedPreferences的名称
- SharedPreferences的名称与在Android文件系统中保存的文件同名。因此,只要具有相同的SharedPreferences名称的NVP内容,都会保存在同一个文件中
public static final String PREFERENCE_NAME = "SaveSetting";
- 为了可以使用SharedPreferences,需要将访问模式和SharedPreferences名称作为参数,传递到getSharedPreferences()函数,并获取到SharedPreferences对象
SharedPreferences sharedPreferences = getSharedPreferences(PREFERENCE_NAME, MODE);
3).修改共享的具体数据
- 在获取到SharedPreferences对象后,则可以通过SharedPreferences.Editor类对SharedPreferences进行修改,最后调用commit()函数保存修改内容
- SharedPreferences广泛支持各种基本数据类型,包括整型、布尔型、浮点型和长型等等
SharedPreferences.Editor editor = sharedPreferences.edit()