Android中SharedPreferences通常与Editor连用

接口SharedPreferences常用方法:

boolean contains(String str):判断SharedPreferences中是否包含key为str的数据;

abstract Map<String,?>getALL():获取SharedPreferences中所有数据;

String getxxxx(String str,xxxx defvalue):获取指定类型的key为str的值!如果没有找到,则返回 defvalue

SharedPreferences 对象的获取方法:

通过Context中的getSharedPreferences(String name,int mode);

1、第一个参数为SharedPreferences的名称!

2、第二个参数有如下几个值:

(1)Context.MODE_PRIVATE   :指定SharedPreferences数据只能被本应用使用

  (2)Context.MODE_WORLD_READABLE:指定SharedPreferences数据可以被其他应用读取,但是不能写

  (3)Context.MODE_WORLD_WRITEABLE:指定SharedPreferences数据可以被其他应用程序读写

Editor 常用方法:

SharedPreferences.Editor  Clear(); 清空SharedPreferences中所有数据

SharedPreferences.Editor  putxxxx(String str,xxxx value) 向SharedPreferences中添加数据

SharedPreferences.Editor  remove(String str) 删除SharedPreferences中指定key为str的数据

boolean commit(); 增删改之后提交

获取Editor对象:

SharedPreferences.edit();

代码:

public class MainActivity extends Activity implements OnClickListener{
private Button read,write;
private SharedPreferences preferences;
private SharedPreferences.Editor editor;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
setEvent();
} private void setEvent() {
write.setOnClickListener(this);
read.setOnClickListener(this);
} private void initView() {
write =(Button) this.findViewById(R.id.write);
read =(Button) this.findViewById(R.id.read);
preferences = this.getSharedPreferences("MySharedPreferences",Context.MODE_PRIVATE);
editor = preferences.edit();
} @Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.read:
//contains(Stirng str)方法:查找该sharedpreferences中是否包含key值为str的值!
boolean i = preferences.contains("ddd");
if(i){
String str = preferences.getString("ddd", "0");
//Toast.makeText(this,""+str+"", 0).show();
}else{
Toast.makeText(this,"没找到该数据", 0).show();
}
Map<String, ?> map = preferences.getAll();
for (Entry<String, ?> map1 : map.entrySet()) {
Toast.makeText(this,"KEY="+map1.getKey()+"||||||VALUE="+map1.getValue(), 0).show();
}
break;
case R.id.write:
editor.putString("ddd",new Date().toString());
editor.putBoolean("aa",false);
editor.putFloat("ff", 13);
editor.putInt("rr", 33232);
editor.commit();
break;
default:
break;
}
} }

Android数据储存之SharedPreferences的更多相关文章

  1. Android数据储存之SharedPreferences总结

    写在前面:本文是我参考李刚老师的<疯狂Android讲义>以及API所写的读书笔记,在此表示感谢,本人小白,如有错误敬请指教. SharedPreferences的使用背景: 有时候,应用 ...

  2. Android数据存储-通过SharedPreferences实现记住密码的操作

    在Android中登陆中,为了实现用户的方便,往往需要根据用户的需要进行记住密码的操作,所以,在Android数据存储中SharedPreferences恰恰可以实现这一点 下面,小编将带领大家通过S ...

  3. Android 数据存储之 SharedPreferences储存

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

  4. Android数据存储方式--SharedPreferences

    Android数据存储方式有如下四种:SharedPreferences.存储到文件.SQLite数据库.内容提供者(Content provider).存储到网络服务器. 本文主要介绍一下Share ...

  5. Android数据存储之SharedPreferences存储

    安卓系统为应用提供了系统级的配置存储方案,它就是靠SharedPreferences接口来实现的,该接口存储的所有信息都是以名值对的形式保存,但其保存的数据类型也仅限于基本数据类型,如字符串.整形.布 ...

  6. Android数据存储之sharedpreferences与Content Provider

    android中对数据操作包含有: file, sqlite3, Preferences, ContectResolver与ContentProvider前三种数据操作方式都只是针对本应用内数据,程序 ...

  7. Android数据存储三剑客——SharedPreferences、File、SQLite

    Android中常用的数据存储一般有三种方式:SharedPreferences.文件和SQLite数据库,用来保存需要长时间保存的数据.本文将通过几个具体的小实例来讲解这三种方式的具体实现. 数据存 ...

  8. android数据储存之存储方式

    能够将数据储存在内置或可移动存储,数据库,网络.sharedpreference. android能够使用Content provider来使你的私有数据暴漏给其它应用程序. 一.sharedpref ...

  9. Android数据持久化技术 — — —SharedPreferences

    SharedPreferences是使用键值对的方式来存储数据. 要想使用SharedPreferences来存储数据,必须获取SharedPreferences对象,获取SharedPreferen ...

随机推荐

  1. 又一次摔MFC坑里了

    因为公司的个项目最近开始写MFC了,又遇到一个坑爹的问题,使用的View视图模式在VS2010中创建的工程,默认就带入了许多的Style,例如Office 2007的许多漂亮样式确实很方便,但是同样也 ...

  2. WCF使用地址去调用服务端的方法

    前面的章节已经讲过了WCF的代码和SVC页面的分离,这里是分离后,客户端调用代码如下: try { var myBinding = new BasicHttpBinding(); var myEndp ...

  3. 【BZOJ3209】花神的数论题(数位DP)

    点此看题面 大致题意: 设\(sum(i)\)表示\(i\)二进制中1的个数,请求出\(\prod_{i=1}^n sum(i)\). 数位\(DP\) 很显然,这是一道数位\(DP\)题.我们可以先 ...

  4. 【BZOJ1854】[SCOI2010] 游戏(匈牙利算法的应用)

    点此看题面 大致题意: 有\(n\)个物品,每个物品有两个属性且只能选择其中的一个,要求选择的物品属性值从\(1\)开始递增,问最多能选多少个. 暴搜 看到这题,我第一反应是暴搜... ... 好不容 ...

  5. 三种序列化方式存取redis的方法

    常见的的序列化反序列方式的效率: protoBuf(PB) > fastjson > jackson > hessian > xstream > java 数据来自于:h ...

  6. flush caches

  7. 【luogu P1783 海滩防御】 题解

    题目链接:https://www.luogu.org/problemnew/show/P1783 先把题目改造一下:题目所求是要一条能从0列到n列的路径,使其路径上的最大边长一半最小. 为什么是一半呢 ...

  8. 数据库引擎InnoDB和myisam的区别和联系

    1.ENGINE=InnoDB 数据库存储引擎,DEFAULT 默认,CHARSET=utf8 数据库字符编码 2.数据库的存储引擎, mysql中engine=innodb和engine=myisa ...

  9. vim正则表达式的替换变量

    在正规表达式中使用 \( 和 \) 符号括起正规表达式,即可在后面使用\1.\2 等变量来访问 \( 和 \) 中的内容. 例如有下列英汉对照文本: adapter 适配器address 地址alge ...

  10. java的模运算

    在学习某个加密算法的时候留意到模运算,仔细查了资料后才注意到Java中的 % 其实是取余而不是取模,但是百度的时候找到的很多文章都把Java的 % 直接当成取模来用了,为了少踩坑所以自己整理了一下写了 ...