工具类总结---(四)---Sharedpreferences保存
用于保存具有对应关系的键值对
import android.content.Context;
import android.content.SharedPreferences; import java.util.Set; import cgjr.com.cgjr.constants.Constants; /**
* Created by Administrator on 2016/4/13.
*/
public class UtilitySharedpreferences { private SharedPreferences.Editor spe;
private Context context;
//指定sharepreferences文件的名称
private String configxml = "";
private SharedPreferences sp; public UtilitySharedpreferences(Context context, String configxml) {
this.context = context;
this.configxml = configxml;
sp = context.getSharedPreferences(configxml, Context.MODE_PRIVATE);
spe = sp.edit();
} /**
* 保存键值对到xml文件中
*
* @param type 类型判断 1 boolean 2 float 3 int 4 long 5 string 6 stringset
* @param key
* @param value
*/
public void putMsg(int type, String key, Object value) {
switch (type) {
case Constants.BOOLEAN:
spe.putBoolean(key, (Boolean) value);
break;
case Constants.FLOAT:
spe.putFloat(key, (Float) value);
break;
case Constants.INT:
spe.putInt(key, (Integer) value);
break;
case Constants.LONG:
spe.putLong(key, (Long) value);
break;
case Constants.STRING:
spe.putString(key, (String) value);
break;
case Constants.STRINGSET:
spe.putStringSet(key, (Set<String>) value);
break;
}
spe.commit();
} /**
* 根据key值,获取xml中的内容
*
* @param type
* @param key
*/
public Object getMsg(int type, String key, Object value) {
Object obj = null;
switch (type) {
case Constants.BOOLEAN:
obj = sp.getBoolean(key, (Boolean) value);
break;
case Constants.FLOAT:
obj = sp.getFloat(key, (Float) value);
break;
case Constants.INT:
obj = sp.getInt(key, (Integer) value);
break;
case Constants.LONG:
obj = sp.getLong(key, (Long) value);
break;
case Constants.STRING:
obj = sp.getString(key, (String) value);
break;
case Constants.STRINGSET:
obj = sp.getStringSet(key, (Set<String>) value);
break;
}
return obj;
} }
其中Constants对应的代码为:
public static final int BOOLEAN = 1;
public static final int FLOAT = 2;
public static final int INT = 3;
public static final int LONG = 4;
public static final int STRING = 5;
public static final int STRINGSET = 6;
设置为数字的话,更加便于写代码
工具类总结---(四)---Sharedpreferences保存的更多相关文章
- 使用LogPhoneUtil工具类在Android手机保存APP运行日志
最近公司的测试老是提出这样那样的bug,当然也怪自己代码写的烂,所以测试总是会把app搞崩溃,而他们那边崩溃的时候还没有日志打印,自己回来再重现有的时候还真不好复现出来,因此麻烦事就来了.为了方便查看 ...
- 并发工具类(四)线程间的交换数据 Exchanger
前言 JDK中为了处理线程之间的同步问题,除了提供锁机制之外,还提供了几个非常有用的并发工具类:CountDownLatch.CyclicBarrier.Semphore.Exchanger.Ph ...
- [课本]JDBC课程6--使用JDBC的DAO模块化--完成数据库的增删查改_工具类JDBCTools四个(Preparedstatement)功能模块的敲定版
(课本P273-任务九) /**DAO: Data Access Object * 为什么用: 实现功能的模块化,更有利于代码的维护和升级 * 是什么: 访问数据信息的类,包含对数据的CRUD(cre ...
- Java并发工具类(四):线程间交换数据的Exchanger
简介 Exchanger(交换者)是一个用于线程间协作的工具类.Exchanger用于进行线程间的数据交换.它提供一个同步点,在这个同步点两个线程可以交换彼此的数据.这两个线程通过exchange方法 ...
- String工具类之“四个判空方式”StringUtils.isNotBlank和StringUtils.isEmpty和StringUtils.isBlank和StringUtils.isNotEmpty
一.判断str字符串都不为空==>StringUtils.isNotBlank(String str); 1 /** 2 * <p>检查一个字符串是否非空("") ...
- Android 分享一个SharedPreferences的工具类,方便保存数据
我们平常保存一些数据,都会用到SharedPreferences,他是保存在手机里面的,具体路径是data/data/你的包名/shared_prefs/保存的文件名.xml, SharedPrefe ...
- JavaScript工具类(三):localStorage本地储存
localStorage Web 存储 API 提供了 sessionStorage (会话存储) 和 localStorage(本地存储)两个存储对象来对网页的数据进行添加.删除.修改.查询操作. ...
- Java并发(十六):并发工具类——Exchanger
Exchanger(交换者)是一个用于线程间协作的工具类.Exchanger用于进行线程间的数据交换.它提供一个同步点,在这个同步点两个线程可以交换彼此的数据.这两个线程通过exchange方法交换数 ...
- SharedPreferences的工具类,使用起来方便、快捷
SharedPreferences的工具类,使用起来方便.快捷:上代码:import android.content.Context;import android.content.SharedPref ...
- SharedPreferences的工具类
import android.content.Context; import android.content.SharedPreferences; import android.content.Sha ...
随机推荐
- pcntl_fork 导致 MySQL server has gone away 解决方案
pcntl_fork 前连数据库,就会报 MySQL server has gone away 错误.原因是子进程会继承主进程的数据库连接,当mysql返回数据时,这些子进程都可以通过这个连接读到数据 ...
- 单发邮箱 群发邮箱 程序 Email winform
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using Sy ...
- Failed to connect to Xilinx hw_server. Check if the hw_server is running and correct TCP port is used.
Failed to connect to Xilinx hw_server. Check if the hw_server is running and correct TCP port is us ...
- 查找及修改日程管理系统中的bug
1.Java没有分包都糅合在一起 2.在登录界面,没有输入账号密码,点击登录按钮时程序会崩溃,需要给给用户名和密码添加Toast (注:由于程序没有运行出来,所以是搭档孙刘兰的截图) 3.Regist ...
- hdu 1757 A Simple Math Problem (构造矩阵解决递推式问题)
题意:有一个递推式f(x) 当 x < 10 f(x) = x.当 x >= 10 f(x) = a0 * f(x-1) + a1 * f(x-2) + a2 * f(x-3) + ...
- ORACLE JOB创建
Connected Connected as focususer SQL> SQL> --JOB 需要在命令行执行: SQL> --抽数job SQL> CREATE OR R ...
- ajax 大洋与小样的第二步
一.Ajax的对象 XMLHttpRequest的方法 方法 描述 abort() 停止当前请求 getAllResponseHeaders() 把 HTTP请求的所有响应首部作为健/值对返回 get ...
- 2 Java对象的创建过程
JAVA中创建对象直接new创建一个对象,对么对象的创建过程是怎样的呢? 程序运行过程中有许多的对象被创建出来.那么对象是如何创建的呢? 一 对象创建的步骤 1 遇到new指令时,检查这个指令的参数是 ...
- GPIO寄存器
GPIO寄存器描述 <STM32参考手册中文-p75> 1.端口配置低寄存器(GPIOx_CRL)(x = A...E)2.端口配置高寄存器(GPIOx_CRH)(x = A...E) 3 ...
- JavaScript数组基础编程题归纳
之前的随笔"JavaScript中数组类型的属性和方法"中有介绍很多数组类型的方法,但都是一些理论.最近在练习在线编程题,发现自己还是习惯于用常规的循环来答题,对于数组的方法的使用 ...