Android存储之SharedPreferences
Android数据存储之SharedPreferences
SharedPreferences对象初始化
SharedPreferences mSharedPreferences = getSharedPreferences(getPackageName(),MODE_PRIVATE);
- 第一个参数是创建的文件名,可以随便命名,这里是直接获取应用包名
- 第二个参数是操作权限 MODE_PRIVATE表示私有的
- 读取储数据可以直接调用getXxx即可,写数据的时候需要先获取编辑对象,然后执行putXxx,最后需要commit提交。
String类型数据的存取
存储
SharedPreferences.Editor mEdit = mSharedPreferences.edit();
mEdit.putString("StringData", "Hello String");
mEdit.commit();
读取
String stringData = mSharedPreferences.getString("StringData", "Default");
boolean类型数据的存取
存储
SharedPreferences.Editor mEdit = mSharedPreferences.edit();
mEdit.putBoolean("booleanData", true);
mEdit.commit();
读取
boolean booleanData = mSharedPreferences.getBoolean("booleanData", false);
Float类型数据的存取
存储
SharedPreferences.Editor mEdit = mSharedPreferences.edit();
mEdit.putFloat("floatData", 1.0f);
mEdit.commit();
读取
Float floatData = mSharedPreferences.getFloat("floatData", 0.0f);
int类型数据的存取
存储
SharedPreferences.Editor mEdit = mSharedPreferences.edit();
mEdit.putInt("intData", 1);
mEdit.commit();
读取
int intData = mSharedPreferences.getInt("intData", 0);
long类型数据的存取
存储
SharedPreferences.Editor mEdit = mSharedPreferences.edit();
mEdit.putLong("longData",1L);
mEdit.commit();
读取
long longData = mSharedPreferences.getLong("longData", 0);
工具类
- 封装好的工具类,明白SharedPreferences的存储原理以后,可以直接拿过来用,很方便。
package ktalk.kong.qingwei.sharedprifence.utils;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
/**
* Created by qingwei on 2015/7/20.
*/
public class SPUtils {
private static SPUtils mSPUtils;
private SharedPreferences mSharedPreferences;
private Editor mEdit;
private SPUtils(Context context) {
mSharedPreferences = context.getSharedPreferences(context.getPackageName(), Context.MODE_PRIVATE);
mEdit = mSharedPreferences.edit();
}
public static SPUtils getInstance(Context context) {
if (null == mSPUtils) {
mSPUtils = new SPUtils(context);
}
return mSPUtils;
}
/**
* String
* ***********************************************************************
*/
public void putString(String key, String value) {
mEdit.putString(key, value).commit();
}
public String getString(String key, String value) {
return mSharedPreferences.getString(key, value);
}
/**
* boolean
* ***********************************************************************
*/
public void putBoolean(String key, boolean value) {
mEdit.putBoolean(key, value).commit();
}
public boolean getBoolean(String key, boolean value) {
return mSharedPreferences.getBoolean(key, value);
}
/**
* float
* ***********************************************************************
*/
public void putFloat(String key, float value) {
mEdit.putFloat(key, value).commit();
}
public Float getFloat(String key, float value) {
return mSharedPreferences.getFloat(key, value);
}
/**
* int
* ***********************************************************************
*/
public void putInt(String key, int value) {
mEdit.putInt(key, value).commit();
}
public int getInt(String key, int value) {
return mSharedPreferences.getInt(key, value);
}
/**
* long
* ***********************************************************************
*/
public void putLong(String key, long value) {
mEdit.putLong(key, value).commit();
}
public long getLong(String key, long value) {
return mSharedPreferences.getLong(key, value);
}
}
- 用法
SPUtils.getInstance(this).putString("stringData", "Hello String");
String stringData = SPUtils.getInstance(this).getString("stringData", "default")
Android存储之SharedPreferences的更多相关文章
- Android数据存储方式--SharedPreferences
Android数据存储方式有如下四种:SharedPreferences.存储到文件.SQLite数据库.内容提供者(Content provider).存储到网络服务器. 本文主要介绍一下Share ...
- Android应用开发SharedPreferences存储数据的使用方法
Android应用开发SharedPreferences存储数据的使用方法 SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的 ...
- Android入门(九)文件存储与SharedPreferences存储
原文链接:http://www.orlion.ga/578/ Android系统中主要提供了三种方式用于简单地实现数据持久化功能,即文件存储.SharedPreference存储以及数据库存储.当然, ...
- Android数据存储-通过SharedPreferences实现记住密码的操作
在Android中登陆中,为了实现用户的方便,往往需要根据用户的需要进行记住密码的操作,所以,在Android数据存储中SharedPreferences恰恰可以实现这一点 下面,小编将带领大家通过S ...
- Android 数据存储之 SharedPreferences储存
------------------------------------------SharedPreferences存储--------------------------------------- ...
- Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (一) —— 总览
Android数据的四种存储方式SharedPreferences.SQLite.Content Provider和File (一) —— 总览 作为一个完成的应用程序,数据存储操作是必不可少的. ...
- android数据存储之SharedPreferences
一.SharedPreferences简介 (1)SharedPreferences是Android平台上一个轻量级的存储类,用来保存应用的一些常用配置,比如Activity状态,Activ ...
- Android数据存储三剑客——SharedPreferences、File、SQLite
Android中常用的数据存储一般有三种方式:SharedPreferences.文件和SQLite数据库,用来保存需要长时间保存的数据.本文将通过几个具体的小实例来讲解这三种方式的具体实现. 数据存 ...
- Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (三) —— SharePreferences
除了SQLite数据库外,SharedPreferences也是一种轻型的数据存储方式,它的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信息.其存储位置在/data ...
随机推荐
- hdu 5510 Bazinga(字符串kmp)
Bazinga Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Sub ...
- poj3237 树链部分 边权模板
Tree Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 7384 Accepted: 2001 Description ...
- ubuntu 16.04常见错误--Could not get lock /var/lib/dpkg/lock解决
我的博客 ubuntu常见错误--Could not get lock /var/lib/dpkg/lock解决 通过终端安装程序sudo apt-get install xxx时出错: E: Cou ...
- Golang学习笔记:goroutine
1.goroutine goroutine是go语言的并发体.在go语言里面能使用go关键字来实现并发. go func() 1.1 概念介绍 goroutine本质上是协程,我刚刚学习的时候就粗略地 ...
- jquery传值与判断
js判断是否包含字符串 var str="Hello world!" var s = str.indexOf("Hello") 存在则s>-1不存在则是s ...
- tar包和jar包和war包的区别?
tar:tar是*nix下的打包工具,生成的包通常也用tar作为扩展名,其实tar只是负责打包,不一定有压缩,事实上可以压缩,也可以不压缩,通常你看到xxxx.tar.gz,就表示这个tar包是压缩的 ...
- C语言实现的排序
冒泡排序 比较相邻的两个元素,若顺序不对,则将其调换 通过一遍排序,较大的数会排到最后(沉到底部) 两层循环,外层循环控制遍数,内层循环控制每一遍内的排序. 完整代码: #include<std ...
- #error : Xiron Platform Abstraction Layer - Win32 - Microsoft Visual Studio versions above 2010 (10.0) are not supported! 解决方案
OpenNI1.5 VS2013配置环境后,编译会出现这个错误: 错误 error C1189: #error : Xiron Platform Abstraction Layer - Win32 - ...
- 【if...else】三角形判断
给定三条边的长度,判断能否组成三角形,如果可以,判断三角形的形状. 输入要求 一组数据,每行三个实数,在(0,10]之间 输出要求 根据每行的数据判断,如果不能组成三角形,则输出"Not a ...
- Go 语言切片(Slice)
Go 语言切片是对数组的抽象. Go 数组的长度不可改变,在特定场景中这样的集合就不太适用,Go中提供了一种灵活,功能强悍的内置类型切片("动态数组"),与数组相比切片的长度是不固 ...