數據 的存儲(1)使用SharedPreferencesjava
數據存儲主要 有兩個:本地存儲,網絡 存儲,這裏是本地存儲。android
本地存儲三個方式:1,SharedPreferences , 2.文件存儲 3.SQLite存儲。下面是SharedPreferences。、網絡
1.什麼是SharePreferences編輯器
(1)輕量級別的 , Activity級別的 ,能夠被 這個 程序的全部 的Activity共享 。spa
(2)保存在android目錄 中的/data/data/PACKAGE_NAME/shared_prefs下的XML文件中。orm
(3)和Map<key ,value>很像的方式保存。如xml
<map>對象
<stringname="String">SharedPreferences保存的數據</string>rem
</map>get
2.使用SharedPreference保存數據
四個 個steps:獲取SharedPreferences對象 ,建立 editor編輯器,修改內容 ,提交修改內容 。
(1)獲取SharedPreferences對象
getSharedPreferences("Content",Context.MODE_PRIVATE) ;
第一個參數是TAG,文件名稱 。
第二個是應用模式,這裏表示 是私有文件,只能被 應用自己訪問。寫入的內容會覆蓋原來的。
還有三個模式:
Context.MODE_APPEND
Context.WORLD_READABLE:文件能夠被 別的程序 讀取
Context.WORLD_WRITABLE: 文件能夠被 別的程序 寫入。
(2) 建立一個Editor
在sharedPreferences中編輯 信息,就要有editor。editor 提供 一些 方法,用來修改xml文件中的內容 。獲得
Editor以下
SharedPreferences.editor();
(3)使用editor修改數據
editor.putString("String",data) 第一個參數 就是key.
建立 一個<string></string>節點 。
還有editor.clear()清除全部 的,editor.remove(),移除指定的。
(4)提交內容
將這個修改提交給SharedPreferences,以告訴 它將內容寫入到xml中
editor.commit();
必定要提交 。在java中,map.put()後是不用提交 的,可是在android中要提交才行。
3.讀取數據
(1)獲得SharedPreference對象
同上,用
getSharedPreferences("Content",Context.MODE_PRIVATE) ;
(2)取出 key對應的值
SharedPreferences.getString();
如name =sp.getString("name","");
這個 過程 中不用editor。
loginBtn.setOnClickListener(newOnClickListener(){
public voidonClick(View arg0) {
// TODOAuto-generated method stub
name =name_in.getText().toString();
pass =pass_in.getText().toString();
SharedPreferencessp = getSharedPreferences("Content",Context.MODE_PRIVATE);
Editoreditor = sp.edit();
editor.putString("name",name);
editor.putString("pass",pass);
editor.commit();
Toast.makeText(getBaseContext(),"保存成功",Toast.LENGTH_SHORT).show();
}
});
regBtn.setOnClickListener(newOnClickListener(){
public voidonClick(View arg0) {
// TODOAuto-generated method stub
SharedPreferencessp = getSharedPreferences("Content",Context.MODE_PRIVATE);
Stringname =sp.getString("name", "");
Stringpass = sp.getString("pass", "");
name_in.setText(name);
pass_in.setText(pass);
Toast.makeText(getBaseContext(),"讀取數據",Toast.LENGTH_SHORT).show();
}
});