android資料存放區_內部儲存

來源:互聯網
上載者:User

標籤:android   資料   資料存放區   儲存   

源碼下載(免下載積分):下載     

 你可以直接儲存資料到內部儲存中,預設情況下,檔案儲存體到內部儲存中是私人的,不能被 
  其他程式訪問,當卸載應用程式,這些檔案會被移除。 
  建立並寫入資料可以有兩種方法:

  • 使用java中的相關的方法,
  • 使用android.content中的相關方法, 
    • 調用 openFileOutput(),並返回FileOutputStream對象
    • 調用FileOutputStream對象的write()方法
    • 關閉流 

     讀檔案也是基本相同的方式。 
     在讀檔案有一點小技巧:如果想在編譯時間儲存一個靜態檔案在你的應用程式中,儲存檔案到 
  res/raw/directory.可以使用openRawResource()方法來開啟檔案,並返回一個InputStream 
  對象,然後就能讀寫資料了。 
 

代碼: 
方法一:

FileOutputStream writeStream = null;FileOutputStream fileOutputStream = null;switch (view.getId()) {    case R.id.button1:    //建立的檔案其他程式不能訪問    File file1 = new File(getFilesDir(),FILE1);    try {        //寫入資料        writeStream = new FileOutputStream(file1);        writeStream.write("haha".getBytes());    } catch (FileNotFoundException e) {        e.printStackTrace();    } catch (IOException e) {        e.printStackTrace();    }    finally{        try {            if (writeStream != null)                 writeStream.close();        } catch (IOException e) {            e.printStackTrace();    }}

方法二:

//使用的是android.content,try {    /*設定成MODE_PRIVATE,其他程式不能訪問,這種是預設的構造方式,可以去設定成其他的方式來使其可讀寫。    */    fileOutputStream = openFileOutput(FILE2,Context.MODE_PRIVATE);    //寫入資料    fileOutputStream.write("hehe".getBytes());} catch (FileNotFoundException e) {    e.printStackTrace();} catch (IOException e) {    e.printStackTrace();}finally{    try {        if (fileOutputStream != null)            fileOutputStream.close();    } catch (IOException e) {        e.printStackTrace();    }}

   儲存快取檔案 
   如果想要緩衝一些檔案,你可以使用createTempFile()去建立檔案,應該使用getCacheDir()去開啟檔案。 

   小技巧:正常情況下,上述的檔案無法看到,要想看到就要使用adb了,模擬器:adb devices查看裝置

                ~$ adb devices 
                List of devices attached 
                emulator-5554    device

                然後進入超級使用者中,就可以做相應命令來查看了

                ~$ adb -s emulator-5554 shell 
                  # 

   注意:應用程式的內部儲存目錄是有應用程式的的包名制定的,預設的情況下,其他程式不能夠訪問內部 
            儲存的路徑,除非你顯示的使用可讀或者可寫的模式。

   參考資料:

                  http://developer.android.com/guide/topics/data/data-storage.html

                        http://developer.android.com/training/basics/data-storage/files.html

           

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.