2011-10-08 58 views
4

在我的應用程序中,我打算將用戶生成的文件存儲在用戶的SD卡存儲中的自定義目錄中(我打算創建)。Android - 創建自定義目錄來存儲文件

我做的是使用:

String pathToExternalStorage = Environment.getExternalStorageDirectory().toString(); 
File appDirectory = new File(pathToExternalStorage + "/" + "AppName"); 
// have the object build the directory structure, if needed. 
appDirectory.mkdirs(); 

你會建議採用這種方法?如果用戶刪除我的應用程序,此文件夾和文件是否會持續存在?

因爲,Android的文件說:

如果你想 保存它們保存不特定於應用程序 ,當你卸載應用程序不應該刪除的文件,來的一個外部存儲上的公共目錄。 這些目錄位於外部存儲的根目錄,如 Music /,Pictures /,Ringtones /等。

我需要的文件,即使用戶卸載應用程序來堅持,但我沒有想擾亂現有的文件夾添加我的我的文件有 - 我想創建一個單獨的文件夾會更好。我正在瞄準API v9及以上版本。

回答

5

似乎是一個很好的方式來做到這一點。我以類似的方式進行,除了我將所有內容都保存在數據文件夾中,即sdcard/data/{packagename}

更新:

你不應該那樣做。改爲使用Environment.getDataDirectory()

0

@jeffreyveon,你的解決方案爲我工作。希望我能發表評論,但聲譽較低

String path = Environment.getExternalStorageDirectory().toString(); 
       File appDirectory = new File(path + "/" + "FolderName"); 
       appDirectory.mkdirs();