2

我正在开发一个安卓应用程序。我需要在内部存储器中创建一个文件夹,但是当我尝试创建该文件夹时,出现以下错误。我在模拟器中运行。

 mkdir failed for /mnt/New Folder , read only file system

我尝试了很多路径,但错误仍然存​​在。我能够创建的唯一文件夹称为“缓存”,但我无法通过文件选择器活动浏览它。知道在没有任何权限的情况下创建文件夹的合适位置在哪里吗?

4

2 回答 2

1

您可以通过 Context 对象(如 Activity)来实现它。

File files_folder = getFilesDir(); 
File files_child = new File(files_folder, "files_child"); 
files_child.mkdirs(); 
File created_folder = getDir("custom", MODE_PRIVATE); 
File f1_child = new File(created_folder, "custom_child"); 
f1_child.mkdirs(); 

功能

getFilesDir()

将在内部存储器中获取文件夹 data/data/yourpackagename/files。和功能

getDir("custom", MODE_PRIVATE)

将在您的应用内部文件夹中创建一个名为 app_custom 的文件夹。

Minhtdh 回答

于 2013-11-13T17:22:50.913 回答
0

我猜你所说的内部存储器实际上是外部存储器(可以通过

文件选择器活动,真正的内存只有在你已经root的情况下才能打开)

如果这是真的,您应该检查以下内容:-首先,您需要 Manisfest 中的写入存储权限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> - 那么你应该使用`

字符串路径 = Environment.getExternalStorageDirectory().getAbsolutePath() + "/yourfoldername"

` 比

mnt/你的文件夹名

  • 最后你应该使用mkdirs创建文件夹而不是mkdir
于 2013-11-11T20:56:20.893 回答