国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android 保存文件路徑方法

2019-10-21 21:43:13
字體:
來源:轉載
供稿:網友

Android保存文件到本地路徑問題

常見路徑

例如: application

包名: com.my.company

項目名: chat

/data/data == ///data/user/0

getExternalFilesDir()方法可以獲取到 SDCard/Android/data/你的應用的包名/files/ 目錄,一般放一些長時間保存的數據getExternalCacheDir()方法可以獲取到 SDCard/Android/data/你的應用包名/cache/目錄,一般存放臨時緩存數據如果使用上面的方法,當你的應用在被用戶卸載后,SDCard/Android/data/你的應用的包名/ 這個目錄下的所有文件都會被刪除,不會留下垃圾信息。而且上面二個目錄分別對應 設置->應用->應用詳情里面的”清除數據“與”清除緩存“選項getCacheDir()方法用于獲取/data/data/<application package>/cache目錄getFilesDir()方法用于獲取/data/data/<application package>/files目錄

保存一張圖片hearder.png到Files

 String path = mContext.getFilesDir().getAbsolutePath(); path = path + File.separator + directoryName + File.separator + fileName; directoryName:chat fileName : hearder.png得到的path即為: ///data/user/0/com.my.company/files/chat/hearder.png 

保存圖片到dir

 String path = mContext.getDir(directoryName, Context.MODE_PRIVATE).getAbsolutePath(); path = path + File.separator + fileName;  directoryName:chat Note: directory can not has "/" fileName : hearder.png得到的path即為: ///data/user/0/com.my.company/app_chat/hearder.png

獲取路徑代碼

public String getDiskCacheDir(Context context) {  String cachePath = null;  if (Environment.MEDIA_MOUNTED.equals(Environment.getExternalStorageState())    || !Environment.isExternalStorageRemovable()) {   cachePath = context.getExternalCacheDir().getPath();  } else {   cachePath = context.getCacheDir().getPath();  }  return cachePath; } 

可以看到,當SD卡存在或者SD卡不可被移除的時候,就調用getExternalCacheDir()方法來獲取緩存路徑,否則就調用getCacheDir()方法來獲取緩存路徑。前者獲取到的就是 /sdcard/Android/data/com.your.company/cache 這個路徑,而后者獲取到的是 /data/data/com.your.company/cache 這個路徑。

路徑分類

android程序掃描儲存時,如果使用API:Environment.getExternalStorageDirectory().getPath()獲得的是默認路徑,可以先判斷下Environment.getExternalStorageDirectory().getParentFile(),如果返回null則沒有父路徑,取Environment.getExternalStorageDirectory().getPath()為當前父路徑。

Environment.getDataDirectory() = /data Environment.getDownloadCacheDirectory() = /cache Environment.getExternalStorageDirectory() = /mnt/sdcard Environment.getExternalStoragePublicDirectory(“test”) = /mnt/sdcard/test Environment.getRootDirectory() = /system getPackageCodePath() = /data/app/com.my.app-1.apk getPackageResourcePath() = /data/app/com.my.app-1.apk getCacheDir() = /data/data/com.my.app/cache getDatabasePath(“test”) = /data/data/com.my.app/databases/test getDir(“test”, Context.MODE_PRIVATE)= /data/data/com.my.app/app_test getExternalCacheDir() = /mnt/sdcard/Android/data/com.my.app/cache getExternalFilesDir(“test”)= /mnt/sdcard/Android/data/com.my.app/files/test getExternalFilesDir(null) = /mnt/sdcard/Android/data/com.my.app/files getFilesDir() = /data/data/com.my.app/files

以上這篇Android 保存文件路徑方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 措美县| 盈江县| 十堰市| 枝江市| 河津市| 安陆市| 沙坪坝区| 顺昌县| 太原市| 竹山县| 长岛县| 古田县| 寻甸| 乐都县| 巴东县| 盘锦市| 达尔| 平阴县| 山阴县| 白沙| 美姑县| 汉沽区| 灵石县| 定兴县| 沁源县| 龙游县| 瑞丽市| 邯郸县| 益阳市| 朝阳县| 紫阳县| 西华县| 柘城县| 南靖县| 靖州| 瑞安市| 衡山县| 古交市| 嘉义市| 大丰市| 洞头县|