使用JavaNIO文件,重命名目录,但如果已经存在,则将文件移动到现有目录
我想把Dir Dir1重命名为Dir2 但是如果Dir2退出,那么我想将Dir1文件移动到Dir2。 C:\Artwork\Dir1 C:\Artwork\Dir2 改名使用JavaNIO文件,重命名目录,但如果已经存在,则将文件移动到现有目录,java,java-7,Java,Java 7,我想把Dir Dir1重命名为Dir2 但是如果Dir2退出,那么我想将Dir1文件移动到Dir2。 C:\Artwork\Dir1 C:\Artwork\Dir2 改名 Files.move(path, path.resolveSibling("NewName"))); //Worked Ok 我已经试过了 Path source = Paths.get("C:\\Artwork\\Dir1"); Path newDir = Paths.get("C:\\Artwork\\Dir2"); F
Files.move(path, path.resolveSibling("NewName"))); //Worked Ok
我已经试过了
Path source = Paths.get("C:\\Artwork\\Dir1");
Path newDir = Paths.get("C:\\Artwork\\Dir2");
Files.move(source, newDir,StandardCopyOption.ATOMIC_MOVE); //Throwed AccessDeniedException
Files.move(source, newDir,StandardCopyOption.REPLACE_EXISTING); //Throwed DirectoryNotEmptyException
如果Dir2不存在,则使用Dir2.mkdir;创建一个目录。如果已经是EXEXT,则移动目录文件Dir1,文件Dir2;
如果Dir2不存在,我们可以移动整个目录,然后使用Dir2.mkdir;创建一个目录。如果已经是EXEXT,则移动目录文件Dir1,文件Dir2;
我们可以移动整个目录,因为Java 1.7中有Java.nio.file.Files,它提供了处理文件和目录的操作。特别是移动、复制和walkFileTree功能。自从Java 1.7以来,就有了Java.nio.file.Files,它提供了处理文件和目录的操作。特别是move、copy和walkFileTree函数。我已经编写了一些实用方法,使用NIO文件API复制目录。该库是开源的: 马文:
<dependency>
<groupId>org.softsmithy.lib</groupId>
<artifactId>softsmithy-lib-core</artifactId>
<version>0.3</version>
</dependency>
教程:
API:
我已经编写了一些实用程序方法,使用NIO文件API复制目录库是开源的: 马文:
<dependency>
<groupId>org.softsmithy.lib</groupId>
<artifactId>softsmithy-lib-core</artifactId>
<version>0.3</version>
</dependency>
教程:
API:
听起来好像已经存在的dir案例中存在问题?如果某些东西不起作用,请告诉我们。Files.movesource、newDir、StandardCopyOption.ATOMIC\u MOVE;java.nio.file.AccessDeniedException:C:\Artwork\Dir1->C:\Artwork\Dir2 Files.movesource、newDir、StandardCopyOption.REPLACE_EXISTING;java.nio.file.directoryNotemptyException听起来dir已经出现了问题?如果某些东西不起作用,请告诉我们。Files.movesource、newDir、StandardCopyOption.ATOMIC\u MOVE;java.nio.file.AccessDeniedException:C:\Artwork\Dir1->C:\Artwork\Dir2 Files.movesource、newDir、StandardCopyOption.REPLACE_EXISTING;java.nio.file.directoryNotemptyException谢谢Chakri,我可以,但我想使用java 7 nio文件。谢谢Chakri,我可以,但我想使用java 7 nio文件。