android 之SharedPreferences工具类

来源:互联网 发布:企业社交网络平台 编辑:程序博客网 时间:2024/06/06 00:15

这里需要补充一点是,如果你想成功的将对象存储到SharedPreference当中,就去csdn网站,下载“commons-codec-1.4.jar”.


/** * @类名:SharedPreferencesSava * @类描述:本地存储工具类 * @修改人: * @修改时间: * @修改备注: * @版本: */public class SharedPreferencesSava {    private static SharedPreferencesSava instance = null;    public static SharedPreferencesSava getInstance() {        if (instance == null) {            instance = new SharedPreferencesSava();        }        return instance;    }    /**     * @方法说明:保存对象     * @方法名称:savaObject     * @param context     * @param spName     * @param key     * @param ob     * @返回void     */    public boolean savaObject(Context context, String spName, String key,            Object ob) {        if (ob == null) {            return false;        }        boolean falg = false;        SharedPreferences preferences = WKXApplication.getAppContext()                .getSharedPreferences(spName, context.MODE_PRIVATE);        // 创建字节输出        ByteArrayOutputStream baos = new ByteArrayOutputStream();        ObjectOutputStream oos = null;        try {            // 创建对象输出流,并封装字节流            oos = new ObjectOutputStream(baos);            // 将对象写入字节流            oos.writeObject(ob);            // 将字节流编码成base64的字符窜            String oAuth_Base64 = new String(Base64.encodeBase64(baos                    .toByteArray()));            falg = preferences.edit().putString(key, oAuth_Base64).commit();        } catch (IOException e) {            e.printStackTrace();        } finally {            try {                if (oos != null) {                    oos.close();                }                if (baos != null) {                    baos.close();                }            } catch (IOException e) {                e.printStackTrace();            }        }        return falg;    }    /**     * @方法说明:获取存储的对象     * @方法名称:getObject     * @param context     * @param spName     * @param key     * @return     * @返回值:Object     */    public Object getObject(Context context, String spName, String key) {        Object ob = null;        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        String productBase64 = preferences.getString(key, "");        // 读取字节        byte[] base64 = Base64.decodeBase64(productBase64.getBytes());        // 封装到字节流        ByteArrayInputStream bais = new ByteArrayInputStream(base64);        ObjectInputStream bis = null;        try {            // 再次封装            bis = new ObjectInputStream(bais);            // 读取对象            ob = bis.readObject();        } catch (Exception e) {            e.printStackTrace();        } finally {            try {                if (bis != null) {                    bis.close();                }                if (bais != null) {                    bais.close();                }            } catch (IOException e) {                e.printStackTrace();            }        }        return ob;    }    /**     * @方法说明:存储int数据     * @方法名称:savaIntValue     * @param context     * @param spName     * @param key     * @param value     * @返回void     */    public void savaIntValue(Context context, String spName, String key,            int value) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        preferences.edit().putInt(key, value).commit();    }    /**     * @方法说明:获取int数据     * @方法名称:getIntValue     * @param context     * @param spName     * @param key     * @return     * @返回int     */    public int getIntValue(Context context, String spName, String key) {        return getIntValue(context, spName, key, 0);    }    /**     * @方法说明:获取int数据     * @方法名称:getIntValue     * @param context     * @param spName     * @param key     * @param defaultValue     * @return     * @返回int     */    public int getIntValue(Context context, String spName, String key,            int defaultValue) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        return preferences.getInt(key, defaultValue);    }    /**     * @方法说明:存储float数据     * @方法名称:savaFloatValue     * @param context     * @param spName     * @param key     * @param value     * @返回void     */    public void savaFloatValue(Context context, String spName, String key,            float value) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        preferences.edit().putFloat(key, value).commit();    }    /**     * @方法说明:获取float数据     * @方法名称:getFloatValue     * @param context     * @param spName     * @param key     * @return     * @返回float     */    public float getFloatValue(Context context, String spName, String key) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        return preferences.getFloat(key, 0);    }    /**     * @方法说明:存储boolean数据     * @方法名称:savaBooleanValue     * @param context     * @param spName     * @param key     * @param value     * @返回void     */    public void savaBooleanValue(Context context, String spName, String key,            boolean value) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        preferences.edit().putBoolean(key, value).commit();    }    /**     * @方法说明:获取boolean数据     * @方法名称:getBooleanValue     * @param context     * @param spName     * @param key     * @return     * @返回boolean     */    public boolean getBooleanValue(Context context, String spName, String key) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        return preferences.getBoolean(key, false);    }    /**     * @方法说明:获取boolean数据     * @方法名称:getBooleanValue     * @param context     * @param spName     * @param key     * @param isDefault     * @return     * @返回boolean     */    public boolean getBooleanValue(Context context, String spName, String key,            boolean isDefault) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        return preferences.getBoolean(key, isDefault);    }    /**     * @方法说明:存储long数据     * @方法名称:savaLongValue     * @param context     * @param spName     * @param key     * @param value     * @返回void     */    public void savaLongValue(Context context, String spName, String key,            long value) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        preferences.edit().putLong(key, value).commit();    }    /**     * @方法说明:获取long数据     * @方法名称:getLongValue     * @param context     * @param spName     * @param key     * @return     * @返回long     */    public long getLongValue(Context context, String spName, String key) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        return preferences.getLong(key, 0);    }    /**     * @方法说明:存储String数据     * @方法名称:savaStringValue     * @param context     * @param spName     * @param key     * @param value     * @返回void     */    public void savaStringValue(Context context, String spName, String key,            String value) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        preferences.edit().putString(key, value).commit();    }    /**     * @方法说明:获取String数据     * @方法名称:getStringValue     * @param context     * @param spName     * @param key     * @return     * @返回String     */    public String getStringValue(Context context, String spName, String key) {        SharedPreferences preferences = context.getSharedPreferences(spName,                context.MODE_PRIVATE);        return preferences.getString(key, "");    }}


转载地址:http://blog.csdn.net/u011993368/article/details/43759351?ref=myread

0 0
原创粉丝点击