我创建了一个java.nio.MappedByteBuffer
围绕一个java.io.RandomAccessFile
(一个只有 54 KB 大小的文件)。结果MappedByteBuffer
具有大约 12 KB 的“容量”和“限制”,所以当我尝试调用mybytebuffer.get(i > 13044)
或mybytebuffer.put(i > 13044, value)
它抛出一个InvalidIndexException
.
所有这些行为都记录在 Sun 的官方 javadocs 中。我的问题是如何使用java.nio ByteBuffers
文件中的任何位置读取或写入(我需要随机访问)。我似乎找不到说明非顺序访问的 Java NIO 示例或文档。