SharedPreferences存取工具SpUtil
2016-03-03 09:42
239 查看
package com.fei.utils; import android.content.Context; import android.content.SharedPreferences; import android.content.SharedPreferences.Editor; public class SpUtil { //存储的sharedpreferences文件名 private static final String FILE_NAME = "save_file_name"; /** * 保存数据到文件 * @param context * @param key * @param data */ public static void saveData(Context context, String key,Object data){ String type = data.getClass().getSimpleName(); SharedPreferences sharedPreferences = context .getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE); Editor editor = sharedPreferences.edit(); if ("Integer".equals(type)){ editor.putInt(key, (Integer)data); }else if ("Boolean".equals(type)){ editor.putBoolean(key, (Boolean)data); }else if ("String".equals(type)){ editor.putString(key, (String)data); }else if ("Float".equals(type)){ editor.putFloat(key, (Float)data); }else if ("Long".equals(type)){ editor.putLong(key, (Long)data); } editor.commit(); } /** * 从文件中读取数据 * @param context * @param key * @param defValue * @return */ public static Object getData(Context context, String key, Object defValue){ String type = defValue.getClass().getSimpleName(); SharedPreferences sharedPreferences = context.getSharedPreferences (FILE_NAME, Context.MODE_PRIVATE); //defValue为为默认值,如果当前获取不到数据就返回它 if ("Integer".equals(type)){ return sharedPreferences.getInt(key, (Integer)defValue); }else if ("Boolean".equals(type)){ return sharedPreferences.getBoolean(key, (Boolean)defValue); }else if ("String".equals(type)){ return sharedPreferences.getString(key, (String)defValue); }else if ("Float".equals(type)){ return sharedPreferences.getFloat(key, (Float)defValue); }else if ("Long".equals(type)){ return sharedPreferences.getLong(key, (Long)defValue); } return null; } }
相关文章推荐
- js实现向后台传递二维数组
- day03 js
- 决战Offer---操作系统
- JSP中的几种注释
- JavaScript、jQuery、css3实现瀑布流加载
- JS基础(三)
- The project: radio which is referenced by the classpath, does not exist.
- 通过js框架jquery判断IE浏览器版本来解决浏览器兼容性问题
- [LeetCode]237. Delete Node in a Linked List
- JS 断点调试
- 12个非常不错的免费HTML后台管理模板
- 理解CSS盒子模型
- Javascript 操作 DOM 常用 API 总结
- HTML5的新特性(1)
- 理解js中的原型链,prototype与__proto__的关系
- 主流浏览器内核介绍(前端开发值得了解的浏览器内核历史)
- Bootstrap的轮播图在火狐浏览器中无法显示
- JS 一定要放在 Body 的最底部么?聊聊浏览器的渲染机制
- 走进AngularJs(中) 服务机制1
- jQuery mouseover与mouseenter,mouseout与mouseleave的区别