在Java中复制文件的标准简洁方法?

一直困扰着我,用Java复制文件的唯一方法是打开流,声明缓冲区,读入一个文件,循环遍历并将其写出到另一流。Web上散布着这种解决方案的类似但仍然略有不同的实现。

有没有更好的方法可以保留在Java语言的范围内(意味着不涉及执行OS特定的命令)?也许在某个可靠的开源实用程序包中,这至少会掩盖该基本实现并提供一线解决方案?

回答:

如上面的工具包所述,Apache Commons IO尤其是FileUtils是必经之路。copyFile() ; 它为您处理所有繁重的工作。

并且作为一个后记,请注意,FileUtils的最新版本(例如2.0.1发行版)增加了使用NIO复制文件的功能。NIO可以显着提高文件复制性能,这在很大程度上是因为NIO例程将复制直接推迟到OS /文件系统,而不是通过在Java层中读写字节来处理。因此,如果您正在寻找性能,那么可能值得检查一下您是否在使用最新版本的FileUtils。

以上是 在Java中复制文件的标准简洁方法? 的全部内容, 来源链接: utcz.com/qa/413740.html

回到顶部