android-資料存放區之SharedPreferences

來源:互聯網
上載者:User

標籤:

資料存放區:SharedPreferences

一、基礎概要

  1、說明

    1>主要用於儲存單一小資料;

    2>儲存類型:boolean、float、String、long、int

    3>資料儲存路徑:/data/data/packageName/shared_prefs/xxx.xml

    4>應用卸載時會刪除此資料(實際上---包名檔案夾下所有資料在應用卸載是都會刪除"packageName")

    5>可以設定作業資料的許可權,eg.只能是當前應用讀取--MODE_PRIVATE(預設)

                   MODE_WORLD_WRITEABLE 

                   MODE_WORLD_READABLE 

                   MODE_MULTI_PROCESS

        操作資料的許可權可以通過查看源碼得到,這些注釋都寫在源碼注釋上;

       2、SharedPreferences   對應sp檔案介面

      ---SharedPreferences  context.getSharedPreferences(String name,int mode)   得到sp實作類別的對象

          參數一:檔案名稱(不帶.xml,已經固定)

          參數二:組建檔案模式,包括上述四種。

      ---Editor sp.edit()   得到Editor對象

      ---Xxxsp.getXxx(name,defaultValue)  根據name得到指定資料,如果得不到返回defaultValue

  3、Editor 更新sp檔案介面

      ---Editor put(name,value)   儲存一個索引值對(但沒有真正儲存到檔案中)

      ---Editor remove(name)

      ---Editor commit()   提交,資料真正儲存到檔案中。

        以上方法傳回值一樣都是Editor類型,可以搞個方法鏈調用。

二、練習

  1、儲存資料步驟:

    1>得到sp對象

    2>得到editor對象

    3>得到要儲存的資料

    4>使用editor儲存資料

    5>提交

  2、讀取資料步驟:

    1>得到要查詢資料的key

    2>根據key讀取value 

        sp.getXxx(key,value);

三、重要代碼

儲存資料:

SharedPreferences sp=getSharedPreferences("kk", MODE_PRIVATE);
     Editor ed=sp.edit();
     //方法鏈調用
     ed.putString("向日葵", "我是一朵美麗的向日葵")
      .putString("向日葵", "我還是一朵美麗的向日葵")  //覆蓋上一句value
      .putString("康康", "我還是一朵美麗的向日葵")
      .putInt("謝榮康", 23)
      .putString("砂鍋軒","不好吃").commit();
     
     Toast.makeText(MainActivity.this, "儲存成功", Toast.LENGTH_SHORT).show();

通過以上實驗,每一個key對應一個唯一的value;隱藏檔如下:

檔案儲存體路徑:

 

 

讀取資料:

 

 

android-資料存放區之SharedPreferences

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.