Android中数据存储之SharedPreferences
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor; /**
* SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储Key-Value键值对数据,<br/>
* 通常用来存储一些简单的配置信息。其存储位置在/data/data/<包名>/shared_prefs目录下。<br/>
* SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。<br/>
* SharedPreferences对象与SQLite数据库相比,免去了创建数据库、创建表、写SQL语句等操作,更加易用。<br/>
* 但是SharedPreferences仅支持以下数据类型:<br/>
* boolean<br/>
* int<br/>
* float<br/>
* long<br/>
* String<br/>
* 但是无法进行条件查询等,所以不论SharedPreferences的数据存储操作是如何简单,<br/>
* 它只能是存储方式的一种补充,而无法完全替代如SQLite数据库等其他数据存储方式。<br/>
*
* @author wangzhu
* @date 2014年11月22日 上午10:17:49
*/
public class SharedPreferencesUtils {
/**
* 将内容写入SharedPrefrences中
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param value
* 值
*/
public static void write(Context context, String fileName, String key,
boolean value) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.putBoolean(key, value);
editor.commit();
} /**
* 读取SharedPreferences中标记所对应的值
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param defValue
* 默认值
* @return
*/
public static boolean readBoolean(Context context, String fileName,
String key, boolean defValue) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
return preferences.getBoolean(key, defValue);
} /**
* 将内容写入SharedPrefrences中
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param value
* 值
*/
public static void write(Context context, String fileName, String key,
int value) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.putInt(key, value);
editor.commit();
} /**
* 读取SharedPreferences中标记所对应的值
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param defValue
* 默认值
* @return
*/
public static int readInt(Context context, String fileName, String key,
int defValue) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
return preferences.getInt(key, defValue);
} /**
* 将内容写入SharedPrefrences中
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param value
* 值
*/
public static void write(Context context, String fileName, String key,
long value) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.putLong(key, value);
editor.commit();
} /**
* 读取SharedPreferences中标记所对应的值
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param defValue
* 默认值
* @return
*/
public static long readLong(Context context, String fileName, String key,
long defValue) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
return preferences.getLong(key, defValue);
} /**
* 将内容写入SharedPrefrences中
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param value
* 值
*/
public static void write(Context context, String fileName, String key,
float value) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.putFloat(key, value);
editor.commit();
} /**
* 读取SharedPreferences中标记所对应的值
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param defValue
* 默认值
* @return
*/
public static float readFloat(Context context, String fileName, String key,
float defValue) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
return preferences.getFloat(key, defValue);
} /**
* 将内容写入SharedPrefrences中
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param value
* 值
*/
public static void write(Context context, String fileName, String key,
String value) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.putString(key, value);
editor.commit();
} /**
* 读取SharedPreferences中标记所对应的值
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
* @param defValue
* 默认值
* @return
*/
public static String readString(Context context, String fileName,
String key, String defValue) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
return preferences.getString(key, defValue);
} /**
* 删除SharedPreferences中Key对应的值
*
* @param context
* 上下文对象
* @param fileName
* 文件名
* @param key
* 标记
*/
public static void remove(Context context, String fileName, String key) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.remove(key);
editor.commit();
} /**
* 清除SharedPreferences中对应文件的所有内容
*
* @param context
* 上下文对象
* @param fileName
* 文件名
*/
public static void clear(Context context, String fileName) {
SharedPreferences preferences = context.getSharedPreferences(fileName,
Context.MODE_PRIVATE);
Editor editor = preferences.edit();
editor.clear();
editor.commit();
}
}
Android中数据存储之SharedPreferences的更多相关文章
- Android中数据存储(一)
国庆没有给国家添堵,没有勾搭妹子,乖乖的写着自己的博客..... 本文将为大家介绍Android中数据存储的五种方式,数据存储可是非常重要的知识哦. 一,文件存储数据 ①在ROM存储数据 关于在ROM ...
- android中数据存储
android中数据存储 Android 中存储数据的方式有五种:SQLite数据库.文件存储.内容提供者.网络.SharedPreferences(Key----value)五种存储方式. ...
- Android中数据存储(四)——ContentProvider存储数据
目录(?)[+] 当一个应用程序在Android中安装后,我们在使用应用的过程中会产生很多的数据,应用都有自己的数据,那么我们应该如何存储数据呢? 数据存储方式 Android 的数据存储有5种方 ...
- Android中数据存储(三)——SQLite数据库存储数据
当一个应用程序在Android中安装后,我们在使用应用的过程中会产生很多的数据,应用都有自己的数据,那么我们应该如何存储数据呢? 数据存储方式 Android 的数据存储有5种方式: 1. Share ...
- Android简易数据存储之SharedPreferences
Andorid提供了多种数据存储的方式,例如前面说到的“Android数据存储之SQLite的操作”是用于较复杂的数据存储.然而,如果有些简单的数据存储如果采用SQLite的方式的话会显得比较笨重.例 ...
- android中数据存储的contentprovider的使用方法
元数据接口 package com.example.contentproviderprojecrt; import android.net.Uri; import android.provider.B ...
- Android之数据存储之SharedPreferences
SharedPreferences是以键值对形式存储数据,主要用于记录系统的设置,如飞行模式是否开启,声音大小的值等.//SharedPreferences方式保存到xml文件SharedPrefer ...
- Android 中数据存储方式有哪些?
a) 文件存储b) xml,SharedPreferencec) SQLite数据库d) ContentProvidere) 网络
- Android 数据存储之 SharedPreferences储存
------------------------------------------SharedPreferences存储--------------------------------------- ...
随机推荐
- CSS精粹之布局技巧
1.若有疑问立即检测 在出错时若能对原始代码做简单检测可以省去很多头痛问题.W3C对于XHTML与CSS都有检测工具可用,请见http://validator.w3.org 请注意,在文件开头的错误, ...
- 解决iOS设备屏幕切换时页面造成的问题
环境:IOS6~7 Safari 问题:iOS设备屏幕切换时可能会造成屏幕变大,出现左右间距等问题 解决方法: 头部加入<meta name = "viewport" con ...
- C# 整形数组排序
static void Main(string[] args) { , , , , , , , , , }; Array.Sort(numbers); Array.ForEach<int> ...
- C#操作系统日志
系统日志可以帮助我们分析操作系统的安全与否,也可以帮助我们将一些不好调试的信息显示出来. C#操作系统日志主要是通过EventLog类来实现的. 一 图解 打开事件查看器,其中与EventLog类对应 ...
- DataSnap如何监控Tcp/IP客户端的连接情况
一个实例,如果客户端是TCP/IP是短连接的情况就没有必要了. 一.GlobVar.pas单元,定义应用系统全局数据类型及变量: unit GlobVar; interface uses System ...
- Linux性能监控top及vmstat命令
监控的工具---top 第一行: 03:07:27 当前系统时间 3 days, 18:58 系统已经运行了3天18小时58分钟(在这期间没有重启过) 4 users load average: 0. ...
- 【mongodb】 需求
增删改查 增加: (表名,增加内容) 删除: (表名,数据id) 改: (表名 根据id获取数据 修改 增加 查 (表名,字段 ) 关联查询? 请主站提供一下 在使用的接口
- 使用ab测试工具 进行并发测试
ab.exe -n1000 -c100 http://localhost:8067/api/todo/555e95feb301baa678141148 http://www.cnblogs.com/y ...
- 在iOS App的图标上显示版本信息
最近读到一篇文章(http://www.merowing.info/2013/03/overlaying-application-version-on-top-of-your-icon/)介绍了一种非 ...
- sky A800s手机恢复出厂设置操作
关机的情况下,手指一起按这3个按键(音量下键+搜索键+开机键)看到SKY标志后即可松手,就可以进入恢复界面恢复界面操作方法:音量上下键为上下移动,关机键为选择.选择 wipe data/factory ...