SharedPreferences(转)
[功能]
大家在android开发中 一点有这样的需求 就是需要保存一下与该程序有关的属性设置的问题
比如:window xp 中 <假设系统盘为 C:/> 的位置为: C:\Program Files
那么在android中是怎样呢? 那就是:SharedPreferences
既然它是用来保存数据的 那么一点下面问题:
1. 如何创建
2. 如何加入数据
3. 如何取出数据
因为 很多程序都有这个需要 所以自己把该功能集成并列出一些接口函数 以后用的话 会方便很多 这个类名为:SharedPreferencesHelper
[代码]
1. 以指定名字来创建
- SharedPreferences sp;
- SharedPreferences.Editor editor;
- Context context;
- public SharedPreferencesHelper(Context c,String name){
- context = c;
- sp = context.getSharedPreferences(name, 0);
- editor = sp.edit();
- }
2. 以键值<String Key,String Value> 的方式加入数据
- public void putValue(String key, String value){
- editor = sp.edit();
- editor.putString(key, value);
- editor.commit();
- }
3. 以 String Key 为索引来取出数据
- public String getValue(String key){
- return sp.getString(key, null);
- }
4. 如何使用 SharedPreferencesHelper
- package com.android.SharedPreferences;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.TextView;
- /*
- * to access from: data/data/com.android.SharedPreferences/share_prefs
- */
- public class SharedPreferencesUsage extends Activity {
- public final static String COLUMN_NAME ="name";
- public final static String COLUMN_MOBILE ="mobile";
- SharedPreferencesHelper sp;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- //setContentView(R.layout.main);
- sp = new SharedPreferencesHelper(this, "contacts");
- //1. to store some value
- sp.putValue(COLUMN_NAME, "Gryphone");
- sp.putValue(COLUMN_MOBILE, "123456789");
- //2. to fetch the value
- String name = sp.getValue(COLUMN_NAME);
- String mobile = sp.getValue(COLUMN_MOBILE);
- TextView tv = new TextView(this);
- tv.setText("NAME:"+ name + "\n" + "MOBILE:" + mobile);
- setContentView(tv);
- }
- }
5. 其他问题
* 文件存放路径: 因为我的这个例子的pack_name 为:package com.android.SharedPreferences;
所以存放路径为:data/data/com.android.SharedPreferences/share_prefs/contacts.xml
* contacts.xml 的内容为:
- <?xml version='1.0' encoding='utf-8' standalone='yes' ?>
- <map>
- <string name="mobile">123456789</string>
- <string name="name">Gryphone</string>
- </map>
* 取出的数据为:

- SharedPreferencesUsage.rar (23 KB)
- 下载次数: 353
转载自: http://www.iteye.com/topic/573212
SharedPreferences(转)的更多相关文章
- Android之SharedPreferences数据存储
一.SharedPreferences保存数据介绍 如果有想要保存的相对较小键值集合,应使用SharedPreferences API.SharedPreferences对象指向包含键值对的文件并提供 ...
- SharedPreferences 的另一种场景的用法
SharedPreferences 的另一种场景的用法 昨天,下班在家想做什么来着,然后想用SharedPreferences存点数据,但是不知道咋地突然想到,SharedPreferences是应用 ...
- 取代SharedPreferences的多进程解决方案
Android的SharedPreferences用来存储一些键值对, 但是却不支持跨进程使用. 跨进程来用的话, 当然是放在数据库更可靠啦, 本文主要是给作者的新库PreferencesProvid ...
- 简单的学习心得:网易云课堂Android开发第五章SharedPreferences与文件管理
一.SharedPreferences (1)SharedPreferences能够用来保存一些属于基本数据类型的数据. (2)保存数据,删除数据都是由SharedPreferences的内部接口Ed ...
- android SharedPreferences 存储对象
我们知道SharedPreferences只能保存简单类型的数据,例如,String.int等. 如果想用SharedPreferences存取更复杂的数据类型(类.图像等),就需要对这些数据进行编码 ...
- Android SharedPreferences公共类sharedhelper
SimpAndroidFarme是近期脑子突然发热想做的android快速开发的框架,目标是模块化 常用的控件,方便新手学习和使用.也欢迎老鸟来一起充实项目:项目地址 sharedpreference ...
- Android SharedPreferences存储
原创文章,转载请注明出处:http://www.cnblogs.com/baipengzhan/p/Android_SharedPreferences.html 一 概念 SharedPreferen ...
- Android——SharedPreferences
SharedPreferences是一种轻型的Android数据存储方式,用来保存应用的一些常用配置. 实现SharedPreferences存储的步骤如下: 1.根据Context获取SharedP ...
- SharedPreferences 详解
获取SharedPreferences的两种方式: 1 调用Context对象的getSharedPreferences()方法 2 调用Activity对象的getPreferences()方法 两 ...
- Tray - a SharedPreferences replacement for Android
一个代替SharedPreferences的开源库, no Editor, no commit() no apply(),因此不存在UI卡顿现象,并且支持多线程,在一个线程中存另一个线程中取数据. h ...
随机推荐
- Memcached在windows下的安装于使用
原文链接:http://blog.csdn.net/jjmaiz/article/details/7935672 有一点要注意的是,上文作者没有提及: 将php_memcached.dll放在ext文 ...
- DataTable中如何去除重复的项
DataView dv =dataTable.DefaultView; DataTable dt = dv.ToTable(true, "Name");
- 在Microsoft-IIS/10.0上面部署mvc站点的时候,出现404的错误
写在前面 在家自己弄了一个项目,想部署在电脑上用手机来访问,总是出现404的错误.路由什么的没有写错啊,最后发现是映射程序的问题,在安装的时候iis很多功能没有安装,又将iis的其他没有安装的功能勾选 ...
- SecureCRT光标颜色
SecureCRT连linux光标一直没有,尤其是在vim编辑文档的时候特别麻烦,今天找出解决办法: 选项->会话选项->仿真:将ANSI颜色选中: 选项->会话选项->外观: ...
- js数组常用操作方法小结(增加,删除,合并,分割等)
本文实例总结了js数组常用操作方法.分享给大家供大家参考,具体如下: var arr = [1, 2, 3, 4, 5]; //删除并返回数组中第一个元素 var theFirst = arr.shi ...
- [整理]SSRS error:rsReportNotReady
直接访问http://XXX/ReportServer/Pages/ReportViewer.aspx?reportpath&rs%3aCommand=Render执行查询是没有问题的. 但是 ...
- UIImageView 动画 / UIImage 方向
UIImage 方向 UIImage imageOrientation是相对当前屏幕的横竖屏来判断方向 如果本身是横屏, 照片也是横屏的话, 方向是正方向 BOOL b1 = (originalIma ...
- 压缩 javascript 和 css
www.iwangzheng.com 目前我们项目中的 CSS/JS 文件比较多, 由于RAILS 3.0 没有提供asset pipeline功能,所以这样会制约我们的访问速度. 例如: 目前,我 ...
- bellman ford优先队列优化简介模板
#include<iostream>#include<cstdio>#include<utility>#include<queue>#include&l ...
- javascript 重写已有的方法
现在有一个需求,需要重写方法,比如方法名为a,但是在方法内部,需要用到原来的方法,怎么办? 最直接的办法是: var b = a; window.a = function(args){ a.call( ...