android開發之利用SharedPreferences儲存字串陣列
阿新 • • 發佈:2019-02-14
1.Android3.0之後,SharedPreferences提供了putStringSet方法,可以儲存字串陣列,例子:
SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE);
Editor et = sp.edit();
Set set = new HashSet();
set.add("hello");
et.putStringSet(key, set);
2.但需要注意的是,Set中不允許重複元素,若有重複元素,它會自動刪除。不滿足我的需求,所以這裡採取這樣的方式存放字串陣列:
構建兩個函式,用於讀取和存放 字串陣列
public String[] getSharedPreference(String key) { String regularEx = "#"; String[] str = null; SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE); String values; values = sp.getString(key, ""); str = values.split(regularEx); return str; } public void setSharedPreference(String key, String[] values) { String regularEx = "#"; String str = ""; SharedPreferences sp = mContext.getSharedPreferences("data", Context.MODE_PRIVATE); if (values != null && values.length > 0) { for (String value : values) { str += value; str += regularEx; } Editor et = sp.edit(); et.putString(key, str); et.commit(); } }