Android中SharedPreferences使用方法介紹

stop_pig的專欄發表於2014-09-10

一、Android SharedPreferences的簡介

SharedPreferences是一種輕型的Android資料儲存方式,它的本質是基於XML檔案儲存key-value鍵值對資料,通常用來儲存一些簡單的配置資訊。其儲存位置在/data/data/<包名>/shared_prefs目錄下。SharedPreferences物件本身只能獲取資料而不支援儲存和修改,儲存修改是通過Editor物件實現。比較經典的使用方式例如使用者輸入框對過往登入賬戶的儲存。實現SharedPreferences儲存的步驟如下:

1、根據Context獲取SharedPreferences物件
2、利用edit()方法獲取Editor物件。
3、通過Editor物件儲存key-value鍵值對資料。
4、通過commit()方法提交資料。

二、SharedPreferences和Editor 的關係

1、SharedPreferences

public abstract SharedPreferences getSharedPreferences (String name, int mode)

方法得到一個sharedpreferences物件,引數name是preference檔案的名字,mode則是方式,預設為0。

2、Editor

Editor可用於SharedPreferences資料的新增,刪除,修改和查詢。

Public abstract SharedPreferences.Editor  putString (String key,String value)

通過執行commit()或是apply()方法,將會應用更改。

三、SharedPreferences的程式碼片段

// 儲存sharedpreferences
public void setSharedPreference() {
sharedPreferences = getSharedPreferences("itcast", Context.MODE_PRIVATE);
Editor editor = sharedPreferences.edit();
editor.putString("username", text1.getText().toString());
editor.putInt("password", getpw());
editor.commit();// 提交修改
}

// 清除sharedpreferences的資料
public void removeSharedPreference() {
sharedPreferences = getSharedPreferences("itcast", Context.MODE_PRIVATE);
Editor editor = sharedPreferences.edit();
editor.remove("username");
editor.remove("password");
editor.commit();// 提交修改
}

// 獲得sharedpreferences的資料
public void getSahrePreference() {
String username = sharedPreferences.getString("username", "");
int password = sharedPreferences.getInt("password", 0);
String str = String.valueOf(password);
text1.setText(username);
text2.setText(str);
}

相關文章