【发布时间】:2016-06-15 22:10:49
【问题描述】:
在我的 Java 程序中,我有 2 个不同目录的 2 个路径(字符串)。
我想要一种将所有文件从一个目录复制到另一个目录的方法。 (只是内容,而不是文件夹)。
我该怎么做?
【问题讨论】:
-
请查看类 File、Files 或 Apache jar FileUtils。
-
可以使用 Apache Commons FileUtils。请检查我的答案
在我的 Java 程序中,我有 2 个不同目录的 2 个路径(字符串)。
我想要一种将所有文件从一个目录复制到另一个目录的方法。 (只是内容,而不是文件夹)。
我该怎么做?
【问题讨论】:
创建一个扩展 SimpleFileVisitor<Path> 的类并覆盖其方法。 visitFile 应该将文件复制到新目录,VisitDirectory 方法应该继续沿树向下。然后使用 Files.walkFileTree 的新类。
【讨论】:
可以使用
org.apache.commons.io.FileUtils;
Collection getAllFilesThatMatchFilenameExtension(String directoryName, String extension)
{
File directory = new File(directoryName);
return FileUtils.listFiles(directory, new WildcardFileFilter(extension), null);
}
遍历集合并调用
FileUtils.copyFileToDirectory(file, destinationDir);
【讨论】: