jjzjj

FileChannels

全部标签

java - 为什么 .array() 对从映射的 FileChannels 返回的 ByteBuffers 不起作用?

我正在用Java进行内存映射IO。FileChannel类允许您将ByteBuffer映射到文件的特定部分。我正在以只读方式打开文件。我遇到的问题是,当我尝试对生成的ByteBuffer调用.array()方法时出现异常。也许那是因为.array()返回一个byte[]数组,而我真的想要一个最终确定的字节数组?有什么办法解决这个问题吗? 最佳答案 我假设这是关于FileChannel.map的可以将文件映射到可以通过MappedByteBuffer访问的内存的方法.在FileChannel.map方法的文档中,如果文件被映射为只读,

java - 如何使用 FileChannels transferFrom() 方法监控进度(JProgressBar)?

我需要一些关于JProgressBar组件的帮助。我的程序使用java.nioFileChannels将文件从一个地方复制到另一个地方。实际的复制方法是transferFrom()。我现在有两个问题。如何监控FileChannels的传输进度?我发现的所有教程都使用传统的java.ioInputStreams并在循环输入流时增加progressint。我的复制方法(FileChannel方法)被封装在一个单独的方法中,该方法由循环遍历源文件夹和目标文件夹的其他方法调用,然后为每个文件调用FileChannel方法。如何为完整的复制机制实现ProgressBar?好吧,我应该早点阅读常见