Android数据的存储方式(1)SharedPreferences
来源:互联网 发布:美的和格力空调 知乎 编辑:程序博客网 时间:2024/05/16 12:10
我们在开发软件的时候,常需要向用户提供软件参数设置功能,例如我们常用的微信,用户可以设置是否允许陌生人添加自己为好友.对于软件配置参数的保存,如果是在window下通常我们会采用ini文件进行保存.如果是J2EE下面,我们会采用properties属性文件或者xml进行保存.在我们的Android应用中又适合采用什么方式保存软件配置参数呢?Android平台给我们提供了一个SharedPreferences类,它是一个轻量级应用程序内部轻量级的存储方案,特别适合用于保存软件配置参数,比如boolean,int,float,long,String等数据.使用SharedPreferences保存数据,其实质是采用了xml文件存放数据,路径为:/data/data/<package name>/shared_prefs.
SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。实现SharedPreferences存储的步骤如下:
一、根据Context获取SharedPreferences对象
二、利用edit()方法获取Editor对象。
三、通过Editor对象存储key-value键值对数据。
四、通过commit()方法提交数据。
具体实现代码如下:
SP.xml文件的具体内容如下:
1 <?xml version='1.0' encoding='utf-8' standalone='yes' ?>2 <map>3 <string name="STRING_KEY">string</string>4 <int name="INT_KEY" value="0"/>5 <boolean name="BOOLEAN_KEY" value="true"/>6 </map>
在程序代码中,通过getXXX方法,可以方便的获得对应Key的Value值,如果key值错误或者此key无对应value值,SharedPreferences提供了一个赋予默认值的机会,以此保证程序的健壮性。如下图运行结果中因为并无值为"NOT_EXIST"的Key,所以Log打印出的是其默认值:“none”。在访问一个不存在key值这个过程中,并无任何异常抛出。
SharedPreferences对象与SQLite数据库相比,免去了创建数据库,创建表,写SQL语句等诸多操作,相对而言更加方便,简洁。但是SharedPreferences也有其自身缺陷,比如其职能存储boolean,int,float,long和String五种简单的数据类型,比如其无法进行条件查询等。所以不论SharedPreferences的数据存储操作是如何简单,它也只能是存储方式的一种补充,而无法完全替代如SQLite数据库这样的其他数据存储方式
- Android数据的存储方式(1)SharedPreferences
- Android数据的存储方式SharedPreferences
- Android数据的四种存储方式(3)SharedPreferences
- Android的数据存储方式-------使用SharedPreferences存储数据
- Android数据的四种存储方式(1)SharedPreferences、SQLite、Content Provider和File 简介
- Android上常用的几种本地数据存储方式:1、使用SharedPreferences存储数据
- Android 数据持久化方式(2)SharedPreferences方式存储
- Android 数据存储的一种最简单的方式 SharedPreferences
- Android数据的四种存储方式SharedPreferences、SQLite、ContenProvider
- Android数据的四种存储方式之SharedPreferences
- Android数据的四种存储方式之------SharedPreferences
- Android中最简单的数据存储方式:SharedPreferences
- Android的数据存储方式之一——SharedPreferences
- Android数据存储方式(二)SharedPreferences(偏好参数保存)
- Android数据存储方式(二.2)SharedPreferences
- Android数据存储方式(二)SharedPreferences(偏好参数保存)
- 关于Android数据存储方式(一)——SharedPreferences
- Android数据存储方式(二)SharedPreferences(偏好参数保存)
- 内存溢出和内存泄漏的区别
- How to stop a Thread(怎样停止一个线程)
- 几个有用的python链接
- 第一篇博客
- ios应用的升级更新提醒和评分提醒
- Android数据的存储方式(1)SharedPreferences
- 类似评论、点评的JS标签选择功能(及jq动态绑定事件)
- FPGA学习网站
- 删除文件夹下所有的文件
- Solaris scp Permission denied (gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive)
- 使用JDBC连接SQL Server数据库
- 二叉树的建立和遍历
- 黑马程序员——Java语言基础——04.多线程(2)线程间通信
- 【大话】策略模式