今天有空,把文件配置Sharepreference写个封装的demo好好整理一下。
首先看一下网上对它的定义:
SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的就是一个key-value(键值对)SharedPreferences常用来存储一些轻量级的数据。
封装的类
package com.example.testlistq; import android.content.Context; import android.content.SharedPreferences; public class SharedPreferencesUtils { private static final String FILE_NAME = "share_date"; /** * 保存数据的方法,我们需要拿到保存数据的具体类型,然后根据类型调用不同的保存方法 * * @param context * @param key 保存对应的KEY * @param object 保存对应的值 */ public static void setParam(Context context, String key, Object object) { String type = object.getClass().getSimpleName(); SharedPreferences sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE); SharedPreferences.Editor editor = sp.edit(); if ("String".equals(type)) { editor.putString(key, (String) object); } else if ("Integer".equals(type)) { editor.putInt(key, (Integer) object); } else if ("Boolean".equals(type)) { editor.putBoolean(key, (Boolean) object); } else if ("Float".equals(type)) { editor.putFloat(key, (Float) object); } else if ("Long".equals(type)) { editor.putLong(key, (Long) object); } editor.commit(); } /** * 得到保存数据的方法,我们根据默认值得到保存的数据的具体类型,然后调用相对于的方法获取值 * * @param context * @param key * @param defaultObject * @return */ public static Object getParam(Context context, String key, Object defaultObject) { String type = defaultObject.getClass().getSimpleName(); SharedPreferences sp = context.getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE); if ("String".equals(type)) { return sp.getString(key, (String) defaultObject); } else if ("Integer".equals(type)) { return sp.getInt(key, (Integer) defaultObject); } else if ("Boolean".equals(type)) { return sp.getBoolean(key, (Boolean) defaultObject); } else if ("Float".equals(type)) { return sp.getFloat(key, (Float) defaultObject); } else if ("Long".equals(type)) { return sp.getLong(key, (Long) defaultObject); } return null; } }
//调用实例
SharedPreferencesUtils.setParam(this, "name", "小明"); SharedPreferencesUtils.setParam(this, "id", 10241); SharedPreferencesUtils.setParam(this, "ifold", true); String str = SharedPreferencesUtils.getParam(this, "name", "姓名").toString(); String id = SharedPreferencesUtils.getParam(this, "id", 123).toString(); String old = SharedPreferencesUtils.getParam(this, "ifold", false).toString(); Toast.makeText(this, id + "," + str + "," + old, Toast.LENGTH_LONG).show();
本文出自 “爬过山见过海” 博客,谢绝转载!
原文地址:http://670176656.blog.51cto.com/4500575/1650885