我一直试图让以下简单的代码工作,但我不明白为什么它会失败:
File dir = new File("/foo/bar"); // A path to a directory
File destDir = new File("/blah"); // The destination dir
FileUtils.moveDirectoryToDirectory(dir, destDir, !destDir.exists());
该dir
目录包含文件和目录。可能包含,destDir
也可能不包含bar
。
我得到的错误是:
Caused by: org.apache.commons.io.FileExistsException: Destination '/blah/bar' already exists
我在这里做错了什么?内置的Files.move(...)
会做得更好吗(我使用的是 JDK 1.8)?我也试过了,但我似乎无法让它工作。这是简单的东西,我不明白为什么要如此努力地实施......