我有一个在Windows XP中的大文件,大小为38GB(一个虚拟机映像)。
我似乎无法复制它。
在桌面上拖动会出现"系统资源不足,无法完成请求的服务"的错误。
使用Java的FileChannel.transferTo(0, fileSize, dest)对于所有大于2GB的文件都会失败。
将Java的FileChannel.transferTo()分成100Mb的块后,在大约18GB后也会失败。
java.io.IOException: Insufficient system resources exist to complete the requested service
at sun.nio.ch.FileDispatcher.write0(Native Method)
at sun.nio.ch.FileDispatcher.write(FileDispatcher.java:44)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:72)
at sun.nio.ch.IOUtil.write(IOUtil.java:28)
at sun.nio.ch.FileChannelImpl.write(FileChannelImpl.java:198)
at sun.nio.ch.FileChannelImpl.transferToTrustedChannel(FileChannelImpl.java:439)
at sun.nio.ch.FileChannelImpl.transferTo(FileChannelImpl.java:510)
我的意思是,这台电脑有3GB的RAM。100GB的缓存应该足够了吧?!?
显然DOS命令“copy”和“xcopy”也失败了。
(编辑)我尝试了COPY和XCOPY-这些都以相同的错误失败。 XCOPY看起来需要很长很长时间才能完成。
我听说过Robocopy,但它不能复制单个文件?
我真的觉得Windows现在很糟糕。微软肯定听说过大于几GB的文件吧?
谢谢!