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

Android數據儲存——文件儲存

編輯:關於Android編程

文件存儲數據使用了Java中的IO操作來進行文件的保存和讀取。針對文件的操作主要是以下三種: 1.創建或打開文件 2.讀取文件 3.刪除文件

創建文件:

1.通過Context.openFileOutput獲取輸出流 /*
* name 打開或創建文件的名稱
* mode 打開或創建文件的模式
*/
FileOutputStream openFileOutput (String name, int mode) Tip:創建的存儲文件保存在/data/data//files文件夾下 2.四種文件保存的模式 Context.MODE_PRIVATE = 0
Context.MODE_WORLD_READABLE = 1
Context.MODE_WORLD_WRITEABLE = 2
Context.MODE_APPEND = 32768 MODE_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//files" getCacheDir()可以獲取到"/data/data//cache"

把文件存入SDCard

1.操作SDCard需要的權限
name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>


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 mount 3.獲取SDCard目錄 /*
* return SDCard的目錄File
*/
File getExternalStorageDirectory ()

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved