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. xml_editor

    概要 该工程是用来操作xml, 目的是为了在程序中操作xml中各类节点更加简单, 下面按照 工程简介, 库内部实现, 库接口使用, xml工具使用, xpath简介 几个部分来介绍该c++库. 工程简 ...

  2. 转:java中volatile关键字的含义

    转:java中volatile关键字的含义 在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉. Java语言 ...

  3. ASP.Net网站部署失败

    部署站点时候,出现如下错误 “/”应用程序中的服务器错误. ---------------------------------------------------------------------- ...

  4. laravel--has方法--查看关联关系

    has()方法可以用来查询是否有关联关系的一个东西,一般其他的has方法 就是判断这个里面有没有值 $packageOrders = Company::has('packages')->get( ...

  5. 《PHP和MySQL Web开发》精彩的地方收录

    1.用SESSION来做的购物车,做成数组,用isbn对应书的数量作为二维数组保存 $new GET传值加入购物车,submit是修改数量,提交后的表单,通过历遍原来的数组,对应isbn修改最新的数量 ...

  6. WPF 控件DataGrid绑定

    WPF 手动绑定 DataGrid 例子:前台:<DataGrid AutoGenerateColumns="False" Name="dataGrid1" ...

  7. ubuntu c程序操作系统设备

    最近做一个局域网聊天系统,最后想操作系统播放音频文件.其实,Linux下的声音设备编程比大多数人想象的要简单得多.一般说来,我们常用的声音设备是内部扬声器和声卡,它们都对应/dev目录下的一个或多个设 ...

  8. (转)《深入理解java虚拟机》学习笔记10——并发编程(二)

    Java的并发编程是依赖虚拟机内存模型的三个特性实现的: (1).原子性(Atomicity): 原子性是指不可再分的最小操作指令,即单条机器指令,原子性操作任意时刻只能有一个线程,因此是线程安全的. ...

  9. suse linux 操作系统下打BASH补丁

    1.检查当前版本信息: bash -version echo $BASH_VERSION   2.打4.3版本的补丁 在tmp目录下(保险起见,空间至少要100M以上)新建一个bash_upgrade ...

  10. iOS 系统二维码扫描(可限制扫描区域)

    使用 AVFoundation系统库来进行二维码扫描并且限制扫描二维码的范围.(因为默认的是全屏扫描) -(void)beginCode { //1.摄像头设备 AVCaptureDevice *de ...