SharedPreferences是Android中最容易理解的資料存放區技術,實際上SharedPreferences處理的就是一個key-value(索引值對)。SharedPreferences常用來儲存一些輕量級的資料.
複製代碼 代碼如下://執行個體化SharedPreferences對象(第一步)
SharedPreferences mySharedPreferences= getSharedPreferences("test",
Activity.MODE_PRIVATE);
//執行個體化SharedPreferences.Editor對象(第二步)
SharedPreferences.Editor editor = mySharedPreferences.edit();
//用putString的方法儲存資料
editor.putString("name", "Karl");
editor.putString("habit", "sleep");
//提交當前資料
editor.commit();
//使用toast資訊氣球提示成功寫入資料
Toast.makeText(this, "資料成功寫入SharedPreferences!" ,
Toast.LENGTH_LONG).show();
執行以上代碼,SharedPreferences將會把這些資料儲存在test.xml檔案中,可以在File Explorer的data/data下匯出該檔案,並查看。
那麼已經儲存好的資料如何讀取出來呢。我們來看: 複製代碼 代碼如下:[code]
//同樣,在讀取SharedPreferences資料前要執行個體化出一個SharedPreferences對象
SharedPreferencessharedPreferences= getSharedPreferences("test",
Activity.MODE_PRIVATE);
// 使用getString方法獲得value,注意第2個參數是value的預設值
String name =sharedPreferences.getString("name", "");
String habit =sharedPreferences.getString("habit", "");
//使用toast資訊氣球顯示資訊
Toast.makeText(this, "讀取資料如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit,
Toast.LENGTH_LONG).show();
原始碼如下: 複製代碼 代碼如下:public class Main extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
public void onClick_WriteData(View view)
{
SharedPreferences mySharedPreferences = getSharedPreferences("test",
Activity.MODE_PRIVATE);
SharedPreferences.Editor editor = mySharedPreferences.edit();
editor.putString("name", "karl");
editor.putString("habit", "sleep");
editor.commit();
Toast.makeText(this, "資料成功寫入SharedPreferences!" ,
Toast.LENGTH_LONG).show();
}
public void onClick_ReadData(View view)
{
SharedPreferences sharedPreferences = getSharedPreferences("test",
Activity.MODE_PRIVATE);
String name = sharedPreferences.getString("name", "");
String habit = sharedPreferences.getString("habit", "");
Toast.makeText(this, "讀取資料如下:"+"\n"+"name:" + name + "\n" + "habit:" + habit,
Toast.LENGTH_LONG).show();
}
}
圖1.1 程式執行結果