[英]How to create a new folder in android?
我想在外部存儲中創建一個新文件夾。 我使用以下代碼:
val folderMain = "name"
val f = File(getExternalStorageDirectory(), folderMain)
if (!f.exists()) {
f.mkdirs()
}
執行后,它將在內部存儲(而不是外部存儲)中創建並創建一個新文件夾。 如何在外部存儲中創建新文件夾?
我100%確定設備中有外部存儲,並且其中有14 GB可用空間,位置為/storage/extSdCard
。
我已經在兩部三星手機Android版本的jellybean和Kitkat上測試了此代碼,但結果相同。
您可以在這里找到問題的答案:
https://developer.android.com/training/data-storage
我也建議您檢查mkdirs()
的結果:
if (!f.exists() && !f.mkdirs()) {
Log.e("mDebug", "Couldn't create " + f.getName());
}
執行后,它將在內部存儲(而不是外部存儲)中創建並創建一個新文件夾。
不,它將在Android SDK稱為外部存儲的文件中創建文件。
我100%確定設備中有外部存儲,並且其中有14 GB可用空間,位置為/ storage / extSdCard。
那代表可移動存儲 。
如何在外部存儲中創建新文件夾?
您現有的代碼在外部存儲的根目錄中創建一個目錄。 您無法寫入可移動存儲中的任意位置。
最簡單地寫入可移動存儲在由所提供的位置getExternalFilesDirs()
getExternalCacheDirs()
和getExternalMediaDirs()
上的方法Context
。 如果這些返回的位置超過2個,則第二個及后續位置位於可移動存儲中,並且您具有對它們的完全讀取/寫入權限。
試試這個代碼:
String fileName = "myfile.zip";
File ZIP_Directory = new File("/sdcard/MOBstate/");
ZIP_Directory.mkdirs();
File outputFile = new File(PDF_Directory, fileName);
FileOutputStream fos = new FileOutputStream(outputFile);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.