java.nio.file.FileAlreadyExistsException如何在java7中解决此问题 [英] java.nio.file.FileAlreadyExistsException how to resolve this in java7

查看:1916
本文介绍了java.nio.file.FileAlreadyExistsException如何在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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆