Android常用工具類封裝---SharedPreferencesUtil

jopen 11年前發布 | 94K 次閱讀 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;  
        }  

    }  

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!