Android資料儲存——檔案儲存

來源:互聯網
上載者:User

標籤:android   儲存   

檔案儲存體資料使用了Java中的IO操作來進行檔案的儲存和讀取。針對檔案的操作主要是以下三種:1.建立或開啟檔案2.讀取檔案3.刪除檔案建立檔案:1.通過Context.openFileOutput擷取輸出資料流      /*
     * name 開啟或建立檔案的名稱
     * mode 開啟或建立檔案的模式
     */
    FileOutputStream openFileOutput (String name,  int mode)Tip:建立的隱藏檔儲存在/data/data/<package name>/files檔案夾下2.四種檔案儲存的模式 Context.MODE_PRIVATE = 0
Context.MODE_WORLD_READABLE = 1 
Context.MODE_WORLD_WRITEABLE = 2
Context.MODE_APPEND = 32768MODE_PRIVATE 為預設操作模式,代表該檔案是私人資料,只能被應用本身訪問,在該模式下寫入的內容會覆蓋原檔案的內容。MODE_WORLD_READABLE 表示當前檔案可以被其他應用讀取。MODE_WORLD_WRITEABLE 表示當前檔案可以被其他應用寫入。MODE_APPEND 檢查檔案是否存在,存在就往檔案追加內容,否則就建立新檔案。Tip:在使用模式時,可以用"+"來選擇多種模式,比如openFileOutput(FILENAME, Context.MODE_PRIVATE + MODE_WORLD_READABLE)android有一套自己的安全模型,當應用程式(.apk)在安裝時系統就會分配給他一個userid,當該應用要去訪問其他資源比如檔案的時候,就需要userid匹配。預設情況下,任何應用建立的檔案,sharedpreferences,資料庫都應該是私人的讀取檔案:通過Context.openFileInput擷取輸入資料流。     /*
     * name 開啟或建立檔案的名稱
     */
    FileInputStream openFileInput (String name)刪除檔案:     /*
     * name 刪除檔案的名稱
     * return 成功返回true,反之false
     */
     boolean deleteFile (String name)
擷取檔案路徑的方法:getFilesDir()可以擷取到"/data/data/<package name>/files"getCacheDir()可以擷取到"/data/data/<package name>/cache"
把檔案存入SDCard1.操作SDCard需要的許可權     <!-- 在SDCard中建立與刪除檔案許可權 -->
    <uses-permission android: name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
 
    <!-- 往SDCard寫入資料許可權 -->
    <uses-permission android: name="android.permission.WRITE_EXTERNAL_STORAGE"/>  2.要往SDCard存放檔案,程式必須先判斷手機是否裝有SDCard,並且可以進行讀寫。可以通過getExternalStorageState ()獲得SDCard狀態返回的狀態如下: Environment.MEDIA_BAD_REMOVAL:bad_removal ——Media Remote before Unmount
Environment.MEDIA_CHECKING:checking——Media present(已插入) and being disk-check
Environment.MEDIA_MOUNTED:mounted——Media present and mounted and can be read/write
Environment.MEDIA_MOUNTED_READ_ONLY:mounted_ro——Media present and mounted and can be read
Environment.MEDIA_NOFS:nofs——Media present but filesytem not support
Environment.MEDIA_REMOVED:removed——Media not present
Environment.MEDIA_SHARED:shared——Media present and not mount. and share
Environment.MEDIA_UNMOUNTABLE:unmountable——Media present but can not mount
Environment.MEDIA_UNMOUNTED:unmounted——Media present but not mount3.擷取SDCard目錄     /*
     * return SDCard的目錄File
     */
    File getExternalStorageDirectory ()

Android資料儲存——檔案儲存

相關文章

聯繫我們

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