Java NIO在Windows上需要特殊权限吗?Java NIO和Windows磁盘访问
当我运行Windows Server 2003上的Java代码,它失败“访问被拒绝”的错误(这是在cygwin终端窗口中的整个消息):
new FileOutputStream(outputFile).getChannel()
.transferFrom(new FileInputStream(inputFile).getChannel(), 0, Long.MAX_VALUE);
,但如果我使用Apache公地-io(我假设不使用NIO,它与相同的输入和输出文件:
final FileInputStream inputStream = new FileInputStream(inputFile)
final FileOutputStream outputStream = new FileOutputStream(outputStream)
IOUtils.copy(inputStream, outputStream);
我在Java 5中使用管理员帐户运行是否有必须设置一些特殊的文件权限
?
它可能是一个JVM错误。你有没有试过Java 6或7? –
目前无法升级。公司问题。 – Ralph
是否在任何其他应用程序中打开outputFile?是否所有的应用程序都关闭了,这个outputFile在一个点上打开? Windows可能对它认为正在使用的文件有奇怪的问题。换句话说,尝试重新启动机器,然后立即运行该测试。 – sjngm