我想创建一个新目录。 如果它不存在 - 创建它。 如果它存在 - 我想"重置" /"截断"目录。 换句话说,我想要一个空目录
我的问题是 -
答案 0 :(得分:1)
使用一些java 8模式可以提高目录清理和创建的效率,
File file = new File(path);
if(!file.exists())
{
file.mkdir();
}
else
{
Files.walk(Paths.get("C:/test/ABC/"))
.filter(Files::isRegularFile)
.map(Path::toFile)
.forEach(File::delete);
}
答案 1 :(得分:1)
这是不好的做法。如果存在相同的目录名,则 mkdir 无法创建目录。因此不需要仔细检查是否存在具有相同名称的目录。这就是为什么在调用 mkdir 之前检查是不好的做法。
您可以做的简单方法是首先检查目录是否存在。如果是,那么删除并调用 mkdir
您可以查看JDK Bug report。社区成员将其称为错误。