博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android中数据存储之SharedPreferences
阅读量:6786 次
发布时间:2019-06-26

本文共 6918 字,大约阅读时间需要 23 分钟。

import android.content.Context;import android.content.SharedPreferences;import android.content.SharedPreferences.Editor;/** * SharedPreferences是一种轻型的数据存储方式,它的本质是基于XML文件存储Key-Value键值对数据,
* 通常用来存储一些简单的配置信息。其存储位置在/data/data/
<包名>
/shared_prefs目录下。
* SharedPreferences对象本身只能获取数据而不支持存储和修改,存储修改是通过Editor对象实现。
* SharedPreferences对象与SQLite数据库相比,免去了创建数据库、创建表、写SQL语句等操作,更加易用。
* 但是SharedPreferences仅支持以下数据类型:
* boolean
* int
* float
* long
* String
* 但是无法进行条件查询等,所以不论SharedPreferences的数据存储操作是如何简单,
* 它只能是存储方式的一种补充,而无法完全替代如SQLite数据库等其他数据存储方式。
* * @author wangzhu * @date 2014年11月22日 上午10:17:49 */public class SharedPreferencesUtils { /** * 将内容写入SharedPrefrences中 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param value * 值 */ public static void write(Context context, String fileName, String key, boolean value) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.putBoolean(key, value); editor.commit(); } /** * 读取SharedPreferences中标记所对应的值 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param defValue * 默认值 * @return */ public static boolean readBoolean(Context context, String fileName, String key, boolean defValue) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); return preferences.getBoolean(key, defValue); } /** * 将内容写入SharedPrefrences中 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param value * 值 */ public static void write(Context context, String fileName, String key, int value) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.putInt(key, value); editor.commit(); } /** * 读取SharedPreferences中标记所对应的值 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param defValue * 默认值 * @return */ public static int readInt(Context context, String fileName, String key, int defValue) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); return preferences.getInt(key, defValue); } /** * 将内容写入SharedPrefrences中 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param value * 值 */ public static void write(Context context, String fileName, String key, long value) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.putLong(key, value); editor.commit(); } /** * 读取SharedPreferences中标记所对应的值 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param defValue * 默认值 * @return */ public static long readLong(Context context, String fileName, String key, long defValue) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); return preferences.getLong(key, defValue); } /** * 将内容写入SharedPrefrences中 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param value * 值 */ public static void write(Context context, String fileName, String key, float value) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.putFloat(key, value); editor.commit(); } /** * 读取SharedPreferences中标记所对应的值 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param defValue * 默认值 * @return */ public static float readFloat(Context context, String fileName, String key, float defValue) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); return preferences.getFloat(key, defValue); } /** * 将内容写入SharedPrefrences中 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param value * 值 */ public static void write(Context context, String fileName, String key, String value) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.putString(key, value); editor.commit(); } /** * 读取SharedPreferences中标记所对应的值 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 * @param defValue * 默认值 * @return */ public static String readString(Context context, String fileName, String key, String defValue) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); return preferences.getString(key, defValue); } /** * 删除SharedPreferences中Key对应的值 * * @param context * 上下文对象 * @param fileName * 文件名 * @param key * 标记 */ public static void remove(Context context, String fileName, String key) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.remove(key); editor.commit(); } /** * 清除SharedPreferences中对应文件的所有内容 * * @param context * 上下文对象 * @param fileName * 文件名 */ public static void clear(Context context, String fileName) { SharedPreferences preferences = context.getSharedPreferences(fileName, Context.MODE_PRIVATE); Editor editor = preferences.edit(); editor.clear(); editor.commit(); }}

 

转载于:https://www.cnblogs.com/xiaoxian1369/p/4114959.html

你可能感兴趣的文章
Position Independent Code (PIC) in shared libraries on x64
查看>>
CNBLOG上几位.NET大牛的博客地址(转)
查看>>
接口继承和实现继承的区别
查看>>
spring 的自建request请求
查看>>
数组的相关知识
查看>>
Python中的logger和handler到底是个什么鬼
查看>>
mysql之 openark-kit online ddl
查看>>
mydumper安装、原理介绍
查看>>
值类型和引用类型的详细讨论
查看>>
《ArcGIS Runtime SDK for Android开发笔记》——(12)、自定义方式加载Bundle格式缓存数据...
查看>>
mysql 查询当天、本周,本月,上一个月的数据
查看>>
构建和管理有效API市场的关键步骤
查看>>
B00003 C++标准库 std::bitset
查看>>
字符串最小表示法(1) 朴素算法
查看>>
oracle监听问题
查看>>
windows 数据类型转换为 dotnet 数据类型
查看>>
fork函数
查看>>
ROS语音交互——科大讯飞语音合成TTS(二)
查看>>
为什么要架构?当架构走火入魔时怎么办
查看>>
请说明Java中字符'\'的含义,有什么作用?
查看>>