最新消息:把Logo换了一下,虽然丑了点,但至少完全是自己的设计

Apache Commons IO中FileUtil文件复制的问题

Java 宇托 935浏览 暂无评论

项目中用了Apache Common IO,复制文件我用了FileUtil.copy()函数,之前的测试也没有任何问题,但今天测试却总是出现java.io.IOException: Failed to copy full contents from ...的错误。

可能的原因是之前的测试是在32位JDK7下,现在是在64位JRE7下。另外,也有可能是文件比较大。

因为时间比较紧,所以没时间去调查到底是什么原因出现这个问题了。发现项目中用到Commons IO的地方不是很多,最直接的方法,不用Apache Commons IO了。

我的方法是用Java7里新的Files类里的copy()函数替换FileUtil.copy()函数。之后连续测试了一千次左右,没有发现上面的问题。而用Apache Common IO的FileUtil.copy()函数,基本上3次就有一次会出错。

看来以后用开源软件时也要注意,有BUG的地方还是有的。

附上Files类的API地址:http://docs.oracle.com/javase/7/docs/api/java/nio/file/Files.html

转载请注明:宇托的狗窝 » Apache Commons IO中FileUtil文件复制的问题

发表我的评论
取消评论

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址