File.mkdirs JavaDocs:
公共布尔 mkdirs()
创建由此抽象路径名命名的目录,包括任何必要但不存在的父目录。请注意,如果此操作失败,它可能已成功创建一些必要的父目录。
返回:当且仅当创建了目录以及所有必要的父目录时才返回 true;否则为假
我的问题是:如果 mkdirs() 想要创建的某些目录已经存在,它会返回 false 吗?或者,如果它成功地为文件创建了整个路径,它是否只返回 true,无论某些目录是否已经存在?
它返回假。
来自 java doc: - 如果目录已创建,则为 true,如果失败或目录已存在,则为 false。
你应该这样做:
if (file.mkdirs()) {
System.out.format("Directory %s has been created.", file.getAbsolutePath());
} else if (file.isDirectory()) {
System.out.format("Directory %s has already been created.", file.getAbsolutePath());
} else {
System.out.format("Directory %s could not be created.", file.getAbsolutePath());
}