Android经常使用工具类封装---SharedPreferencesUtil

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android经常使用工具类封装---SharedPreferencesUtil相关的知识,希望对你有一定的参考价值。

SharedPreferences经常使用于保存一些简单的数据,如记录用户操作的配置等,使用简单。

public class SharedPreferencesUtil {
	
	//存储的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;
	}

}




以上是关于Android经常使用工具类封装---SharedPreferencesUtil的主要内容,如果未能解决你的问题,请参考以下文章

Android 工具类经常使用工具类(方法)大全

Android经常使用工具类DateUtils

Android经常使用的工具类

Android操作配置文件封装类,使用json序列化的方式实现

android经常使用正则工具类

Android中经常使用的工具类02