我想将我的应用所需文件保存在内部存储下的目录中。在上一阶段,我使用externalStorageDirectory来存储我的数据。 现在我使用下面的代码来引用我的外部目录
Environment.getExternalStorageDirectory()+"/mydirectory";
我需要一个等效代码来引用我在内部目录中的目录,任何人都可以帮助我...谢谢,
解决方案:
getFilesDir()+"/mydirectory";
感谢您的所有建议和帮助。
答案 0 :(得分:7)
使用getFilesDir()
。
来自docs:
返回文件系统所在目录的绝对路径 使用openFileOutput(String,int)创建的文件将被存储。
读取或写入返回的路径不需要任何权限, 因为这条路径是内部存储。
要回答您的评论,我会引用文档docs:
默认情况下,保存到内部存储的文件对您来说是私有的 应用程序和其他应用程序无法访问它们(也不能 用户)。当用户卸载您的应用程序时,这些文件是 除去。
答案 1 :(得分:1)
public File createDir() {
FIle DIR=null;
if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))
DIR=new File(android.os.Environment.getExternalStorageDirectory()+DIRNAME);
else
DIR=context.getCacheDir();
if(!DIR.exists())
DIR.mkdirs();
return DIR;
}
我在我的一个应用程序中使用它并在外部创建目录,如果它已挂载或不存在,它将在内部存储中创建
答案 2 :(得分:1)
您可以使用:
File f = new File(Environment.getDataDirectory(), "subdir");