mkdirs()不适用于Gingerbread?

时间:2014-01-03 18:49:07

标签: java android xml

我正在尝试创建一个包含内部子文件夹的文件夹。我写了这段代码

File myFolder = new File(Environment.getExternalStorageDirectory().getPath().toString()
                         + File.separator+"Folder/SubFolder"+File.separator);
myFolder.mkdirs();

Log.d("test", "creating the folders");

if (myFolder.exists()) {
    Log.d("test", "folder created");
} else {
    Log.d("test", "there is an error");
}

在我的logcat中,我看到创建的文件夹,但是有错误 显然,我已经添加了

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

许可。问题在哪里?

2 个答案:

答案 0 :(得分:2)

尝试从文件路径中删除File.separator

File myFolder = new File(Environment.getExternalStorageDirectory().getPath().toString()+File.separator+"Folder/SubFolder");

然后检查路径是否存在,如果没有创建文件夹。

if(!myFolder.exists())
myFolder.mkdirs();

答案 1 :(得分:0)

使用下面的代码。

File myFolder = new File(Environment.getExternalStorageDirectory().getPath().toString()
                         + File.separator + "Folder/SubFolder")