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. linux 命令——54 ping(转)

    Linux系统的ping 命令是常用的网络命令,它通常用来测试与目标主机的连通性,我们经常会说“ping一下某机器,看是不是开着”.不能打开网页时会说“你先ping网关地 址192.168.1.1试试 ...

  2. Codeforces Round #327 (Div. 2) C Median Smoothing(找规律)

    分析: 三个01组合只有八种情况: 000 s001 s010 0011 s100 s101 1110 s111 s 可以看出只有010,101是不稳定的.其他都是稳定的,且连续地出现了1或0,标记为 ...

  3. 2017.12.10 Java写一个杨辉三角(二维数组的应用)

    杨辉三角的定律 第n行m列元素通项公式为: C(n-1,m-1)=(n-1)!/[(m-1)!(n-m)!] 需要用到创建二维数组 package com.glut.demo; /** * 杨辉三角 ...

  4. axios跨域问题记录

    axios({headers: {'X-Requested-With': 'XMLHttpRequest','Content-Type': 'application/json; charset=UTF ...

  5. PAT (Advanced Level) Practise - 1094. The Largest Generation (25)

    http://www.patest.cn/contests/pat-a-practise/1094 A family hierarchy is usually presented by a pedig ...

  6. html5shiv.js的作用是

    解析 html5shiv主要解决HTML5提出的新的元素不被IE6-8识别,这些新元素不能作为父节点包裹子元素,并且不能应用CSS样式.让CSS 样式应用在未知元素上只需执行 document.cre ...

  7. XCode5 使用AutoLayout情况下改变控件的 方法

    [self.viewButtonsetTranslatesAutoresizingMaskIntoConstraints:NO]; //[self.view addConstraint:[NSLayo ...

  8. P4746 C’s problem(c)

    时间: 1000ms / 空间: 655360KiB / Java类名: Main 背景 冬令营入学测试 描述 题目描述 小C是一名数学家,由于它自制力比较差,经常通宵研究数学问题. 这次它因为这个数 ...

  9. 五、MySQL 创建数据库

    MySQL 创建数据库 我们可以在登陆 MySQL 服务后,使用 create 命令创建数据库,语法如下: CREATE DATABASE 数据库名; 以下命令简单的演示了创建数据库的过程,数据名为 ...

  10. Linux 系统性能:观察、测试、调优

    一个完整运行的 Linux 系统包括很多子系统(介绍,CPU,Memory,IO,Network,…),监测和评估这些子系统是性能监测的一部分.我们往往需要宏观的看整个系统状态,也需要微观的看每个子系 ...