SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的就是一个key-value(键值对)在读取数据时可以通过这个键把相应的值取出来),SharedPreferences常用来存储一些轻量级的数据。

1、使用SharedPreferences保存数据方法如下:

//实例化SharedPreference对象,取键值对名字为test

SharedPrefences mySharedPrefences=getSharedPrefences("test",Activity.MODE_PRIVATE);

//实例化SharedPreferences.Editor对象

SharedPreferences.Editor editor = mySharedPreferences.edit();

   //用put***(***代表数据类型,如putBoolean即添加布尔数据)的方法保存数据

editor.putString("name","Tom");  editor.putInt("age",25);  editor.putBoolean("married",true);

 //调用commit()方法添加的数据提交

editor.commit();

//切换到DDMS视图,并点击File Explore切换卡,进入到/data/data/com.eeample.***(工程名).shared_prefs目录下,看到生成的test.xml文件

2、使用SharedPreferences读取数据方法如下:

//实例化SharedPreference对象,取键值对名字为test

SharedPrefences mySharedPrefences=getSharedPrefences("test",Activity.MODE_PRIVATE);

    //使用get***(***代表数据类型,如getBoolean即读取布尔数据)

String name=mySharedPrefences.getString("name","");   int age=mySharedPrefences.getInt("age",0);  boolean married=mySharedPrefences.getBoolean("married",false);

    //首先通过 getSharedPrefences()方法得到SharedPrefences对象,然后调用getString()、getInt()、getBoolean()方法去获取前面存储的姓名、年龄、是否婚否,如果没有相应的值就会使用方法中传入的默认值来替代。

3、//通过PreferenceManager类中的getDefaultSharedPreferences(),方法是一个静态方法,它接受一个Context参数,并自动使用当前程序的包名作为前缀名来命名SharedPreferences文件。

SharedPreferences pref = PreferenceManager.getDefaultSharedPreferences(this);

SharedPreferences.Editor editor = pref.edit();

editor.putString("name","Tom");  editor.putInt("age",25);  editor.putBoolean("married",true);

4、  MODE_PRIVATE 私有的,不允许其他程序访问该xml文件。

MODE_WORLD_READABLE 其他程序可以读取

MODE_WORLD_WRITABLE 其他程序可以写

安卓数据存储(2):SharedPreferences的更多相关文章

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

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

  2. Android 数据存储之 SharedPreferences储存

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

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

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

  4. Android数据存储之SharedPreferences存储

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

  5. Android数据存储之SharedPreferences及如何安全存储

    前言: 最近一直在学习ios的数据存储,当学习到NSUserDefaults的时候让我回想起了SharedPreferences,今天闲来无事,想着总结一下SharedPreferences的使用. ...

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

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

  7. Android成长日记-数据存储之SharedPreferences

    数据篇-SharedPreferences Android的四种存储方式 1. SharedPreferences 2. SQLite 3. Content Provider 4. File ---- ...

  8. Android简易数据存储之SharedPreferences

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

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

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

随机推荐

  1. wcf安全

    http://www.cnblogs.com/artech/archive/2011/07/07/customauthorization01.html 安全 http://www.cnblogs.co ...

  2. 【Java】java基本知识

    1.int与Integer的区别 int是基本数据类型,Integer是一个引用数据类型. e.g: int num = 100; // 不是对象 Integer i = 100; // 是对象 // ...

  3. SQL server 变量、运算符

    一.三个表的练习 表一:学生表 student学号:code int (主键)从1开始姓名:name varchar(50)性别:sex char(10)班级:banji char(10)语文教师编号 ...

  4. Git标签管理

    一般我们发布一个新版本到线上服务器时都会在版本库中打一个标签,这时就确定了某个版本将发布到线上.我们可以随时可以查看这个打标签的版本,也就 是说标签其实呢,就是版本库中一个快照.简单说标签就是指向某个 ...

  5. 《STL源码剖析》chapter2空间配置器allocator

    为什么不说allocator是内存配置器而说是空间配置器,因为空间不一定是内存,也可以是磁盘或其他辅助介质.是的,你可以写一个allocator,直接向硬盘取空间.sgi stl提供的配置器,配置的对 ...

  6. Python 入门教程 10 ---- Student Becomes the Teacher

    第一节 1 练习 1 设置三个的字典分别为lloyd,alice,tyler 2 对每一个的字典的key都设置为"name","homework" , &quo ...

  7. 两个月淘宝刷单,连续死N次血泪史 (转)

    两个月淘宝刷单,连续死N次血泪史 派代网 2014/10/13 刷单 分享到:3 [思路网注] 看来是靠刷流量刷销量是行不通了,点击率与展现无法匹配,这是致命的!!那么,贵就贵点,直通车来吧!!再删宝 ...

  8. phpmyadmin万能密码

    影响版本:2.11.3 / 2.11.4 利用方法:用户名处写入‘localhost’@'@”则登录成功. (注意全部是英文标点符号,最后一个为英文双引号)

  9. hdoj 4883 TIANKENG’s restaurant【贪心区间覆盖】

    TIANKENG’s restaurant Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/65536 K (Java/O ...

  10. Java8中Lambda表达式的10个例子

    Java8中Lambda表达式的10个例子 例1 用Lambda表达式实现Runnable接口 //Before Java 8: new Thread(new Runnable() { @Overri ...