利用SharedPreferences保存字符串数组
2014-02-19 22:04
204 查看
原文地址:http://doublekj.blog.163.com/blog/static/146818474201322944643761/
1.Android3.0之后,SharedPreferences提供了putStringSet方法,可以保存字符串数组,例子:
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
Editor et = sp.edit();
Set set = new HashSet();
set.add("hello");
et.putStringSet(key, set);
2.但需要注意的是,Set中不允许重复元素,若有重复元素,它会自动删除。不满足我的需求,所以这里采取这样的方式存放字符串数组:
构建两个函数,用于读取和存放 字符串数组
public String[] getSharedPreference(String key) {
String regularEx = "#";
String[] str = null;
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
String values;
values = sp.getString(key, "");
str = values.split(regularEx);
return str;
}
public void setSharedPreference(String key, String[] values) {
String regularEx = "#";
String str = "";
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
if (values != null && values.length > 0) {
for (String value : values) {
str += value;
str += regularEx;
}
Editor et = sp.edit();
et.putString(key, str);
et.commit();
}
}
1.Android3.0之后,SharedPreferences提供了putStringSet方法,可以保存字符串数组,例子:
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
Editor et = sp.edit();
Set set = new HashSet();
set.add("hello");
et.putStringSet(key, set);
2.但需要注意的是,Set中不允许重复元素,若有重复元素,它会自动删除。不满足我的需求,所以这里采取这样的方式存放字符串数组:
构建两个函数,用于读取和存放 字符串数组
public String[] getSharedPreference(String key) {
String regularEx = "#";
String[] str = null;
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
String values;
values = sp.getString(key, "");
str = values.split(regularEx);
return str;
}
public void setSharedPreference(String key, String[] values) {
String regularEx = "#";
String str = "";
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
if (values != null && values.length > 0) {
for (String value : values) {
str += value;
str += regularEx;
}
Editor et = sp.edit();
et.putString(key, str);
et.commit();
}
}
相关文章推荐
- android开发之利用SharedPreferences保存字符串数组
- 利用函数重载分别创建三个函数,分别是计算2个数的和,3个数的和,4个数的和/利用函数重载分别创建三个函数,分别计算int类型数组中最大值,stirng 类型数组中最长的字符串,double类型数组中最
- 利用join连接数组中的所有字符串
- 字符串数组保存为字符串,arraylist转换成string数组
- C语言中,利用宏定义一个字符串和字符数组定义的字符串其末尾都会自动添加\0字符
- iOS开发:沙盒机制以及利用沙盒存储字符串、数组、字典等数据
- Android资源文件中保存字符串数组详解
- 利用SQL的charindex实现字符串数组和Split函数
- json的作用:按规定格式保存js语言中的一组数据并转换为字符串(json是种特殊的容器,一般保存对象和数组数据(可以嵌套),并把它们装换为字符串在网络中传输?))
- php中将数组转成字符串并保存到数据库中的函数代码
- JSON-JSON字符串转换成JSON对象、JSON对象数组、java实体类以及保存到List列表中
- C++利用stl::sort对结构体数组中的字符串成员排序
- C++输入N个字符串,将他们依次保存到一个字符串数组中,怎么表示字符串输入完成?
- 华为:现有一串字符串,请找出其中的大写字母并顺序保存至output数组中
- 二维字符串数组全局变量保存问题
- 利用指针数组来存strtok函数切割出字符串的首地址
- php中将数组转成字符串并保存到数据库中的函数
- 作业二:将字符串数组把重复数据剔除后写入一个文件保存起来。
- 将字符串p,以token字符进行分隔,结果保存到fields 数组中
- 华为:现有一串字符串,请对字符串中的数字字符按照升序排序,其他非数字字符存储位置保持不变,将结果保存至output数组中