java.nio.file.FileAlreadyExistsException如何在java7中解决此问题 [英] java.nio.file.FileAlreadyExistsException how to resolve this in java7
问题描述
我正在编写代码,我正在使用java nio api创建目录,我的代码段是
i am writing a code i am creating a directory with java nio api my segment of code is
Path target = Paths.get(""+folder_path+xx[0]);
Set<PosixFilePermission> perms = null;
if(xx[2].toLowerCase().equals("read"))
perms =PosixFilePermissions.fromString("r--------");
if(xx[2].toLowerCase().equals("read/write"))
{
perms =PosixFilePermissions.fromString("rw-------");
}
FileAttribute<Set<PosixFilePermission>> attr = PosixFilePermissions.asFileAttribute(perms);
Files.createDirectory(target, attr);
但是它抛出一个错误
java.nio.file.FileAlreadyExistsException: /home/ritesh/Desktop/userA
原因,我知道,因为目录已经具有相同的名称,但是我想用我的代码目录生成的目录覆盖userA目录,如何做到这一点?
reason i know because a directory already with same name but i want to overwrite userA directory with directory generated by my code directory how to accomplsih this??
推荐答案
代替
Files.createDirectory(target, attr);
尝试使用
Files.createDirectories(target, attr);
在Files.createDirectories()
的文档中:
通过首先创建所有不存在的父目录来创建目录.与createDirectory方法不同,如果由于目录已经存在而无法创建目录,则不会引发异常.
Creates a directory by creating all nonexistent parent directories first. Unlike the createDirectory method, an exception is not thrown if the directory could not be created because it already exists.
这篇关于java.nio.file.FileAlreadyExistsException如何在java7中解决此问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!