天天看點

記錄Android開發中擷取系統檔案目錄的一些方法

一、内部存儲(Internal Storage):資料随應用的删除而删除

  1. API方法: getFilesDir()

    對應操作:擷取/data/data/包名/files目錄

  2. API方法:getDir(String dirName, int mode)

    對應操作:擷取/data/data/包名/dirName目錄 (有則打開,沒有則建立)

    mode值:MODE_PRIVATE(預設模式,表示檔案資料為私有,隻能被應用自身通路。新内容覆寫舊内容)

                    MODE_APPEND(在檔案目前内容後面追加新内容。若檔案不存在則建立)

                    MODE_WORLD_READABLE(檔案可被其他應用讀取)

                    MODE_WORLD_WRITEABLE(檔案可被其他應用寫入)

  3. API方法:deleteFile(String fileName)

    對應操作:删除/data/data/包名/files/fileName檔案

  4. API方法:getCacheDir()

    對應操作:擷取/data/user/0/包名/cache目錄

二、外部存儲(External Storage)

  1. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES)

    對應操作:擷取系統Pictures目錄(截圖)

  2. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM)

    對應操作:擷取系統DCIM目錄(相冊)

  3. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC)

    對應操作:擷取系統Music目錄

  4. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_ALARMS)

    對應操作:擷取系統Alarms目錄

  5. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS)

    對應方法:擷取系統Downloads目錄

  6. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS)

    對應操作:擷取系統Documents目錄

  7. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES)

    對應操作:擷取系統Movies目錄

  8. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_NOTIFICATIONS)

    對應操作:擷取系統Notifications目錄

  9. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PODCASTS)

    對應操作:擷取系統Podcasts目錄

  10. API方法:Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_RINGTONES)

    對應操作:擷取系統Ringtones目錄

  11. API方法:getExternalFilesDir(String type)

    對應操作:擷取應用私有目錄(/storage/emulated/0/Android/data/包名/files/XXX,其中XXX依type類型而定)

    type值:(null,Environment.DIRECTORY_RINGTONES,Environment.DIRECTORY_PODCASTS,

    Environment.DIRECTORY_NOTIFICATIONS,Environment.DIRECTORY_MOVIES,

    Environment.DIRECTORY_DOCUMENTS,Environment.DIRECTORY_DCIM,

    Environment.DIRECTORY_ALARMS,Environment.DIRECTORY_DOWNLOADS,

    Environment.DIRECTORY_MUSIC,Environment.DIRECTORY_PICTURES)

  12. API方法:getExternalCacheDir()

    對應操作:擷取應用緩存目錄(/storage/emulated/0/Android/data/包名/cache)

  13. API方法:Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())

    對應操作:檢測External Storage是否可用。true為可用,false為不可用。