Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android數據存儲之SharedPreferences

Android數據存儲之SharedPreferences

編輯:關於Android編程

SharedPreferences是一種輕型的數據存儲方式,基於XML文件存儲key-value pairs鍵值對數據,通常用來存儲一些簡單的配置信息。SharedPreferences對象本身只能獲取數據而不支持存儲和修改,存儲修改是通過Editor對象實現。每一個 SharedPreferences 文件都是由framework管理的並且可以是私有或者可共享的。    數據存儲   新建一個Android項目,在MainActivity的onCreate方法中,調用getSharedPreferences方法,需要注意的是,如果已經存在文件則不會新建,如果鍵值對不存在則會繼續添加到裡面,如果存在名字相同,值不同則會覆蓋原有的值。     Context context=MainActivity.this; SharedPreferences shared=context.getSharedPreferences("Test", MODE_PRIVATE); Editor editor=shared.edit(); editor.putString("Name", "FlyElephant"); editor.putInt("Age", 24); editor.putBoolean("IsMarried", false); editor.commit();  存儲完之後這個時候之後就發現,文件夾下多了一個Test.xml,全路徑應該是data/data/com.example.preference/shared_prefs/Test.xml       導出之後發現xml中內容為:     <?xml version='1.0' encoding='utf-8' standalone='yes' ?> <map> <string name="Name">FlyElephant</string> <int name="Age" value="24" /> <boolean name="IsMarried" value="false" /> </map> 顯示數據   設置一個按鈕點擊事件loadData     public void loadData(View view){      SharedPreferences shared=MainActivity.this.getSharedPreferences("Test", MODE_PRIVATE);      EditText editText=(EditText) findViewById(R.id.edit_sharedName);      editText.setText(shared.getString("Name", ""));      EditText editAge=(EditText) findViewById(R.id.edit_sharedAge);      String ageString=String.valueOf(shared.getInt("Age", 0));      editAge.setText(ageString);  }  數據顯示結果:       刪除節點   點擊第二個按鈕,執行的事件:     public void deleteNode(View view) {      SharedPreferences shared=MainActivity.this.getSharedPreferences("Test", MODE_PRIVATE);      Editor editor=shared.edit();      editor.remove("Age");      editor.commit();      Toast.makeText(MainActivity.this, "刪除成功",Toast.LENGTH_SHORT).show();  } 效果如下:       刪除文件   根據路徑,調用一下File就直接刪除了這個文件:     public void deleteFile(View view){     String pathString="/data/data/"+getPackageName()+"/shared_prefs";     File file=new File(pathString,"Test.xml");     Log.i("com.example.preference",pathString);     if (file.exists()) {         file.delete();     }     Toast.makeText(MainActivity.this, "文件刪除成功",Toast.LENGTH_SHORT).show(); }   Android初學中,白天公司搞.NET,晚上回來搞Android,感覺回到了大學,感覺挺好~   作者:FlyElephant 出處:http://www.cnblogs.com/xiaofeixiang 說明:博客經個人辛苦努力所得,如有轉載會特別申明,博客不求技驚四座,但求與有緣人分享個人學習知識,生活學習提高之用,博客所有權歸本人和博客園所有,如有轉載請在顯著位置給出博文鏈接和作者姓名,否則本人將付諸法律。
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved