6

我遇到了以下代码的问题:

    File folder = new File(Environment.getExternalStorageDirectory() + "/myapp/folderone/foldertwo");
    boolean success = false;
    if (!folder.exists()) {
        success = folder.mkdir();
    }
    if (!success) {
    } else {
    }

但它根本不起作用我还添加了权限:

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

希望有人可以帮助我。

4

2 回答 2

24

尝试使用mkdirs()而不是mkdir()仅使用,这对我有用。

例子:

File folder = new File(Environment.getExternalStorageDirectory() + "/myapp/folderone/foldertwo");
    boolean success = false;
    if (!folder.exists()) {
        success = folder.mkdirs();
    }
    if (!success) {
    } else {
    }
于 2012-06-07T15:31:32.683 回答
6

您是否尝试过调用mkdirs()而不是mkdir()

mkdir 只会创建指定的单个文件夹。在你的情况下“文件夹二”。

mkdirs 将创建指定的文件夹 (foldertwo) 以及路径中的所有其他必需文件夹 (myapp & folderone)

于 2012-06-07T15:29:14.843 回答