標籤:使用sharedpreference來保
上兩節我們都是使用文字檔儲存使用者的資訊,這明顯是存在漏洞的。同時對檔案中的內容不好管理。今天我們學慣用SharedPreference儲存。sharedPreference是專門儲存一些比較零散的資料的。
我們還是用上節的例子分析,將使用者的資訊使用SharedPreference來儲存。
注意:如果不知道是什麼例子,請看Android 儲存學習之在內部儲存中讀寫檔案
當點擊確定按鈕後,就會儲存使用者的資訊:
public void login(View v){String name = ed_nam.getText().toString();String passwd = ed_passwd.getText().toString();//判斷使用者名稱或者密碼是否輸入if((name.equals("")) || (passwd.equals(""))){Toast.makeText(this, "使用者名稱或密碼不可為空", Toast.LENGTH_SHORT).show();}else {if(cb.isChecked()){//使用sharedPreference來儲存使用者的資訊,//SharedPreference的預設路徑是:當前進程包名下的/share_prefs/SharedPreferences sp = getSharedPreferences("info", MODE_PRIVATE);//拿到SharedPreference的編輯器Editor editor = sp.edit();editor.putString("name", name);editor.putString("passwd", passwd);//提交editor.commit();}Toast.makeText(this, "登入成功", Toast.LENGTH_SHORT).show();}}
可以看到在sharedPreference的路徑下有info檔案
匯出可以看到。info.xml是以key,value的形式儲存的
<?xml version='1.0' encoding='utf-8' standalone='yes' ?><map><string name="passwd">1233333</string><string name="name">ert</string></map>
當再次進來時,也能回顯使用者的資訊:
public void readInfo(){//擷取info檔案中的內容SharedPreferences sP = getSharedPreferences("info", MODE_PRIVATE);ed_nam.setText(sP.getString("name", ""));ed_passwd.setText(sP.getString("passwd", ""));}顯示效果:
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
Android 儲存學習之使用SharedPreference儲存檔案