我一直在尝试打开文件存储系统并运行 Android 手机。但是,我遇到了以下问题:
static File dataFolder = Environment.getExternalStorageDirectory();
...
static File userDataFolder = new File(dataFolder, "triathlon");
...
File dayFolder = new File(userDataFolder, folderName);
if(!dayFolder.exists()){
boolean result = dayFolder.mkdir();
if (!result){
Log.d("dayFolder creation", "failed");
}
}
其中 folderName 是表示当前日期的字符串。
这是错误信息:
W/System.err: mkdir failed: ENOENT (No such file or directory) : /storage/emulated/0/triathlon/2016-05-23
我已经添加了写入和读取外部存储的权限。 发生了什么事,我该如何解决?
最佳答案
代替
boolean result = dayFolder.mkdir();
使用
boolean result = dayFolder.mkdirs();
.mkdirs()
将创建所有必要的父目录。
一个或多个父目录可能不存在,因此您无法使用 mkdir()
创建目录,因此您需要 mkdirs()
。
关于java - 安卓:mkdir() 失败:ENOENT(没有那个文件或目录),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37395352/