搞Android有一段时间了,但是并没写过有关Android的博客,今天给大家介绍一下SharedPreferences。

    使用SharedPreferences保存key-value对的步骤如下:

  (1)使用Activity类的getSharedPreferences方法获得SharedPreferences对象,其中存储key-value的文件的名称由getSharedPreferences方法的第一个参数指定。

  (2)使用SharedPreferences接口的edit获得SharedPreferences.Editor对象。

  (3)通过SharedPreferences.Editor接口的putXxx方法保存key-value对。其中Xxx表示不同的数据类型。例如:字符串类型的value需要用putString方法。

  (4)通过SharedPreferences.Editor接口的commit方法保存key-value对。commit方法相当于数据库事务中的提交(commit)操作。

  具体的存入和获取操作,我已经把代码贴出来了,你们可以看一下。

1 package org.sharedPreferences.test;
2
3 import android.app.Activity;
上海网站建设 style="color: #008080;"> 4 import android.content.SharedPre上海闵行企业网站制作ferences;
5 import android.os.Bundle;
6 import android.widget.EditText;
7 import android.widget.RadioGroup;
8
9  public class ShaPreTestActivity extends Activity{
10 /** Called when the activity is first created. */
11 private final String PREFERENCES_NAME="survey";
12 private EditText etName;
13 private EditText etAge;
14 private RadioGroup sex;
15
16 @Override
17 public void onCreate(Bundle savedInstanceState) {
18 super.onCreate(savedInstanceState);
19 setContentView(R.layout.main);
20 etName = (EditText)findViewById(R.id.name);
21 etAge = (EditText)findViewById(R.id.age);
22 sex = (RadioGroup)findViewById(R.id.sex);
23
24 SharedPreferences preferences = getSharedPreferences(PREFERENCES_NAME, Activity.MODE_PRIVATE);
25 etName.setText(preferences.getString("name", ""));
26 etAge.setText(preferences.getString("age", ""));
27 sex.check(preferences.getInt("sex", -1));
28 }
29
30 @Override
31 protected void onStop() {
32 //获得SharedPreferences对象
33 SharedPreferences MyPreferences = getSharedPreferences(PREFERENCES_NAME, Activity.MODE_PRIVATE);
34 //获得SharedPreferences.Editor对象
35 SharedPreferences.Editor editor = MyPreferences.edit();
36 //保存组件中的值
37 editor.putString("name", etName.getText().toString());
38 editor.putString("age", etAge.getText().toString());
39 editor.putInt("sex", sex.getCheckedRadioButtonId());
40 //提交保存的结果
41 editor.commit();
42 super.onStop();
43 }
44 }

  代码写好后,你运行程序,你会发现,你输入完退出后,当你再次进入该程序的时候,你就会发现,你上次写的东东还在上面,而且是一模一样。

  并且你会在data目录下找到一个名字叫survey.xml文件:

  然后把它导出来,打开之后的格式以及内容如下所示:

1 <?xml version='1.0' encoding='utf-8' standalone='yes' ?>
2 <map>
3 <int name="sex" value上海企业网站制作="2131034115" />
4 <string name="name">name</string>
5 <string name="age">10</string>
6 </map>
7

  从上面的内容可以看出,它是把那些字段都保存到了xml文件中,当你开启这个应用的时候,它会自动的去data下面找到相应的xml并且把相应的数据显示出来。

  这是我做的有关SharedPreferences例子,后面我还会介绍一些有关数据库的例子,希望大家继续关注。(本来我是想上传例子的,但是找了半天也没找到,你们如果谁知道,请告我一声,谢谢!)

Android的移动存储解决方案“.NET研究”之SharedPreferences相关推荐

  1. android app数据存储,基于Android开发的APP数据存储研究

    谢原武+龙文 摘要: 作为一个完整的应用程序,数据存储操作是必不可少的.Android系统一共提供了四种数据存储方式分别为File文件存储.Shared Preferences存储.ContentPr ...

  2. 重磅新书 | 《Android 全埋点解决方案》预售正式开启!

    新书抢先看 这是一本实战为导向的.翔实的 Android 全埋点技术与解决方案手册,是国内知名大数据公司神策数据在该领域多年实践经验的总结. 本书详细阐述了 Android 全埋点的 8 种解决方案, ...

  3. 利用Bdrive打造个人私有云存储解决方案

    Bdrive 一款私有云储存软件,可以自己方便的在 Mac/Windows 下架设服务器,并可以通过 PC.Mac.iOS.Android 跨平台使用.以下简单介绍一下利用Bdrive来完成个人私有云 ...

  4. 优秀的云存储解决方案Dropbox,现在注册就有2G

    dropbox是业界领先的云存储解决方案,如果你还没用过,推荐现在就注册试试,注册就有2G免费空间,用我的推荐链接注册的话我们两个还会再各加250M.共同富裕 :) http://db.tt/GDfz ...

  5. 主流大数据存储解决方案评析

    EMC Isilon:横向扩展 性能突出 大数据存储不是一类单独的产品,它有很多实现方式.EMC Isilon存储事业部总经理杨兰江概括说,大数据存储应该具有以下一些特性:海量数据存储能力,可轻松管理 ...

  6. android recovery分区内刷镜像,Android手机Recovery模式取证方法研究.pdf

    Android手机Recovery模式取证方法研究 2015 年第 9 期 信息通信 2015 (总第 153 期) INFORMATION & COMMUNICATIONS (Sum. No ...

  7. android 读取手机存储数据恢复,Android智能手机数据恢复方法浅析

    曾琪 罗慧瑜 摘要:根据数据丢失的原因,Android智能手机数据恢复方法分为两大类:物理恢复和软件恢复.物理恢复一般是由于手机进水.摔坏等无法开机情况下的芯片级恢复,而软件恢复则大多因为逻辑损坏.该 ...

  8. nutanix文件服务器方案,Nutanix推出超融合二级存储解决方案Nutanix Mine

    近日,Nutanix在美国安纳海姆.NEXT用户大会上宣布推出全新开放式解决方案Nutanix Mine,集成二级存储操作与Nutanix企业云平台,为用户在私有云环境下提供完整的主数据存储和二级存储 ...

  9. 常见android app加固厂商脱壳方法研究

    这篇文章主要介绍了常见android app加固厂商脱壳方法研究,需要的朋友可以参考下 目录简述(脱壳前学习的知识.壳的历史.脱壳方法) 第一代壳 第二代壳 第三代壳 第N代壳 简述Apk文件结构De ...

最新文章

  1. dnf时装预览怎么打开_您看我还有机会吗?被阉割的DNF时装市场系统
  2. 8.Layout布局应用
  3. Mysql8.0注意url变更写法
  4. C语言振动排序shaker sort算法(附完整源码)
  5. [渝粤教育] 洛阳理工学院 基础素描 参考 资料
  6. php 去年年初和年底时间,PHP 日期与时间
  7. float取小数点后几位_python Integer整型与Float浮点型操作
  8. Git Extensions 2.33出现unhandled exception has ……解决方法
  9. python 折线图中文乱码_python matplotlib linux中文乱码问题
  10. HFSS天线设计实例_BLE天线仿真
  11. Unity 世界坐标、屏幕坐标、UGUI 坐标 相互转换
  12. 使用dom4j读写xml实例
  13. linux 无盘 重新生成内核,Linux无盘系统_尐惢
  14. 根据两点经纬度计算方位角
  15. 华为android9王者荣耀卡,华为mate9玩王者荣耀怎么样 mate9玩王者荣耀卡吗
  16. arthas profiler诊断服务性能
  17. 【混合编程jni 】第九篇之Jni总结
  18. IntelliJ IDEA 2021.1 关闭更新提醒
  19. C语言:输出汉语拼音与多行
  20. java面条对折问题

热门文章

  1. 如何更改服务器上的数据库文件夹,如何设置数据库文件位置
  2. mysql数据库服务器名_mysql数据库服务器名
  3. 计算机裸机与应用程序及用户之间的桥梁是,2016计算机二级《MS Office》单选试题与解析...
  4. 继电器rc吸收电路取值_继电器的工作原理以及驱动电路解析
  5. 编程的7个主要步骤:
  6. [MySQL高级](一) EXPLAIN用法和结果分析
  7. 互联网晚报 | 11月25日 星期四 | 花呗启动品牌隔离;小米MIUI全球月活用户突破5亿;《长津湖》成中国影史票房冠军...
  8. 为什么我饿了么产品总监不干,却要从事自由职业?
  9. 2021电商618生态洞察报告
  10. es文本分析java代码_Elasticsearch系列---Java客户端代码Demo