简述:以key-value键值对的方式将数据保存到Android自身定义的文件夹(/data/data/<package name>/shared_prefs  root才可见的文件夹)中,并利用该类实现写入和输出。

使用

SharedPreference类实现读取数据(主要方法):

boolean contains(String key):判断文件中是否包含这种key

abstract Map<String,?>getAll();获取SharedPreference数据里的所有key-value。

boolean getXxx(String key,xxx defValue):根据key获取指定value,xxx代表基础引用类型(int,String,float,boolean等),defValue为缺省值(当从数据中返回的值为null则返回defValue)

SharedPreference.Editor实现存储(主要方法)//因为SharedPreferences接口本身并没有提供写入数据的能力,所以利用edit()获取Editor对象,实现存储

clear();清空SharedPreference内所有数据

putXxx(String key,xxx value);按照key-value存储数据,xxx表示基础引用类型

remove(String key);移除指定key对应的value

commit();当Editor编辑完之后需要提交

获取SharedPreference对象:

SharedPreference本身是接口本身,程序无法直接创建实例,需要利用Context.getSharedPreferences(String fileName,int mode;

fileName:文件名

mode:

1. MODE_APPEND: 追加方式存储

2. MODE_PRIVATE: 私有方式存储,其他应用无法访问

3. MODE_WORLD_READABLE: 表示当前文件可以被其他应用读取

4. MODE_WORLD_WRITEABLE: 表示当前文件可以被其他应用写入

实例

public class NewActivity extends AppCompatActivity {
private static final String FileName="FirstSharedPreference";
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
SharedPreferences sharedPreferences = getSharedPreferences(FileName,MODE_PRIVATE);//获取SharePreferences对象
SharedPreferences.Editor editor = sharedPreferences.edit();//获取SharedPreferences的编辑器
editor.putBoolean("test1",true);//输入数据
editor.putString("test2","good");
editor.commit();//写入准备完成,提交数据
Boolean isTrue = sharedPreferences.getBoolean("test1",false);//读取数据
String good = sharedPreferences.getString("test2","bad");
}
}

SharePreferences类的使用的更多相关文章

  1. 数据存储SharePreferences详解

    1.SharedPreferences存储 SharedPreferences时使用键值对的方式来存储数据的,也就是在保存一条数据时,需要给这条数据提供一个对应的键,这样在读取的时候就可以通过这个键把 ...

  2. Java类的继承与多态特性-入门笔记

    相信对于继承和多态的概念性我就不在怎么解释啦!不管你是.Net还是Java面向对象编程都是比不缺少一堂课~~Net如此Java亦也有同样的思想成分包含其中. 继承,多态,封装是Java面向对象的3大特 ...

  3. 从零開始开发Android版2048 (四) 分数、重置、结束

    这一篇的内容主要是在上一篇的基础上,增加分数计算(包含当前分数和最高分数).游戏结束的推断以及游戏界面的重置这三个部分的功能. 一.分数的计算和保存          首先,2048这个游戏的分数包含 ...

  4. Android中的数据储存

    数据的储存是一个十分重要的功能,它涉及到各种类型的数据,各种的储存方式,今天就接触了Android中数据储存的简单应用,有一种方式是可以将存入的数据原封不动的存储起来,这里要用到openfileout ...

  5. Android持久化存储——(包含操作SQLite数据库)

    <第一行代码>读书手札 你可能会遇到的问题:解决File Explorer 中无显示问题 Android中,持久化存储,常见的一共有三种方法实现 (一.)利用文件存储 文件存储是Andro ...

  6. Android数据存取

    Android数据存取 一.SharedPreferencesc存取数据 SharedPreferences是使用键值对的方式来存储数据的,也就是在保存一条数据时,需要给这条数据提供一个对应的键,这样 ...

  7. Android数据存储的三种方式:SharePreferences , file , SQLite

    (1)SharePreferences: 存入: SharedPreferences setter = this.getSharedPreferences("spfile", 0) ...

  8. Android实现SharePreferences和AutoCompletedTextView

    Android实现SharePreferences和AutoCompletedTextView 开发工具:Andorid Studio 1.3 运行环境:Android 4.4 KitKat 工程内容 ...

  9. 写了个SharedPreferences的工具类(带加密)

    /* * Copyright (C) 2014 Jason Fang ( ijasonfang@gmail.com ) * * Licensed under the Apache License, V ...

随机推荐

  1. WEB标准:标准定义、好处、名词解释、常用术语、命名习惯、浏览器兼容、代码书写规范

    1. WEB标准是什么? “WEB标准”是一系列标准的总称.一般的误区经常把WEB标准说成DIV+CSS.准确的说法应该是:采用W3C推荐的WEB标准中的XHTML1.1结合CSS2.0 样式表制作页 ...

  2. JSP总结2 配置开发环境和firstjsp

    JDK的下载 JAVA_HOME ,CLASSPATH,PATH 的配置,根据安装路径. 然后java -version检测配置OK. 编写helloworld.java   放置在同JDK 盘里.j ...

  3. Intent七在属性之一:ComponentName

    注:在<疯狂android讲义>中,此属性称为Component,官方文档中称为ComponentName. 1.The name of the component that should ...

  4. Linux内核目录解析~

    以前进过一些公司看到一些服务器,把环境搭建都搭建在etc里面,而且都乱套了.在找PHP配置文件和apache的conf文件都难找到, 我们应该大致的了解下linux的文件分布 /etc : 放置系统重 ...

  5. class之cls

    cls代表的是类本身,一般在静态方法中使用

  6. linux命令find应用

    基本语法: find   path   -option   [-print ]   [-exec   -ok   command ]   {} \; find命令的参数: pathname: find ...

  7. js对象中什么是可枚举性(enumerable)?

    说到枚举,可能很多人都会想到枚举类型,但在javascript对象中有一个属性为可枚举性,他是什么呢? 概念 可枚举性(enumerable)用来控制所描述的属性,是否将被包括在for...in循环之 ...

  8. Nginx 配置指令的执行顺序(十)

    运行在 post-rewrite 阶段之后的是所谓的 preaccess 阶段.该阶段在 access 阶段之前执行,故名preaccess. 标准模块 ngx_limit_req 和 ngx_lim ...

  9. 新版703n刷openwrt

    自带的官方固件: 3.17.1 Build 140120 Rel.56593n WR703N v1 00000000 在不能web页面刷固件,因为带了校验功能. 老外给出了不上TTL刷路由的方法: h ...

  10. Centos7网络配置+图形界面设置

    一. 查看网络地址: centos7取消了ifconfig命令,使用ip addr命令查看IP地址 二.配置网络 用VirtualBox安装的CentOS7,安装完成后,发现无法上网,于是到网上查了一 ...