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的更多相关文章

  1. Android中数据存储(一)

    国庆没有给国家添堵,没有勾搭妹子,乖乖的写着自己的博客..... 本文将为大家介绍Android中数据存储的五种方式,数据存储可是非常重要的知识哦. 一,文件存储数据 ①在ROM存储数据 关于在ROM ...

  2. android中数据存储

    android中数据存储     Android 中存储数据的方式有五种:SQLite数据库.文件存储.内容提供者.网络.SharedPreferences(Key----value)五种存储方式. ...

  3. Android中数据存储(四)——ContentProvider存储数据

    目录(?)[+]   当一个应用程序在Android中安装后,我们在使用应用的过程中会产生很多的数据,应用都有自己的数据,那么我们应该如何存储数据呢? 数据存储方式 Android 的数据存储有5种方 ...

  4. Android中数据存储(三)——SQLite数据库存储数据

    当一个应用程序在Android中安装后,我们在使用应用的过程中会产生很多的数据,应用都有自己的数据,那么我们应该如何存储数据呢? 数据存储方式 Android 的数据存储有5种方式: 1. Share ...

  5. Android简易数据存储之SharedPreferences

    Andorid提供了多种数据存储的方式,例如前面说到的“Android数据存储之SQLite的操作”是用于较复杂的数据存储.然而,如果有些简单的数据存储如果采用SQLite的方式的话会显得比较笨重.例 ...

  6. android中数据存储的contentprovider的使用方法

    元数据接口 package com.example.contentproviderprojecrt; import android.net.Uri; import android.provider.B ...

  7. Android之数据存储之SharedPreferences

    SharedPreferences是以键值对形式存储数据,主要用于记录系统的设置,如飞行模式是否开启,声音大小的值等.//SharedPreferences方式保存到xml文件SharedPrefer ...

  8. Android 中数据存储方式有哪些?

    a) 文件存储b) xml,SharedPreferencec) SQLite数据库d) ContentProvidere) 网络

  9. Android 数据存储之 SharedPreferences储存

    ------------------------------------------SharedPreferences存储--------------------------------------- ...

随机推荐

  1. Factory_Method

    class Product { public: virtual ~Product() {} ; }; class ProductA : public Product { public: Product ...

  2. 关于Silverlight调用天气预报接口问题

    问题:因Silverlight客户端不能直接调用webservice接口(外网天气接口),调用会出现跨域访问的问题,即使添加了跨域文件也不好使.解决方法如下 解决方法一:1.在服务端建立一个wcf服务 ...

  3. 如何在ARC代码中混编非ARC代码

    “ios中如果arc和非arc文件混编,可以在build parses中指定compile flags,如果arc文件设为"-fobjc-arc",非arc文件设为"-f ...

  4. apache ab的安装步骤

    1:到apache官方网站http://httpd.apache.org/download.cgi#apache24下载最新版本的apache,然后解压,执行如下命令: ./configure –pr ...

  5. iOS中使用自定义字体

    1.确定你的项目工程的Resources下有你要用的字体文件(.ttf或者.odf). 2.然后在你的工程的Info.plist文件中新建一行,添加key为:UIAppFonts,类型为Array或D ...

  6. 【采集】php str_replace

    <?php function my_str_replace($xmlHttp,$order='asc'){ if($order=='asc'){ return str_replace(array ...

  7. myeclipse ctrl+shift+F失效

    因为在使用搜狗输入法,切换到英文状态,输入ctrl+shift+F,格式化完之后,然后再换回来

  8. inputstream与其他格式的转换

    1.InputStream 转换成InputSource . InputStream inputStream = request.getInputStream(); InputSource input ...

  9. Nginx + Tomcat 动静分离实现负载均衡(转)

    0.前期准备 使用Debian环境.安装Nginx(默认安装),一个web项目,安装tomcat(默认安装)等. 1.一份Nginx.conf配置文件 # 定义Nginx运行的用户 和 用户组 如果对 ...

  10. eclipse的android智能提示设置

    eclipse的android智能提示设置 分类: android 技术2011-12-07 23:13 3069人阅读 评论(0) 收藏 举报 eclipseandroidtriggersjavaf ...