如何使用MappedByteBuffer读取大文件?

时间:2019-10-22 11:16:05

标签: java java-io mappedbytebuffer

我想使用MappedByteBuffer读取30GB的文件。

try (FileChannel sourceChannel = new RandomAccessFile("sample.csv", "r").getChannel()) {
    MappedByteBuffer buf = sourceChannel.map(FileChannel.MapMode.READ_ONLY, 0, sourceChannel.size());
}

问题:

java.lang.IllegalArgumentException: Size exceeds Integer.MAX_VALUE
    at java.base/sun.nio.ch.FileChannelImpl.map(FileChannelImpl.java:941)

我在这里可以做什么?

0 个答案:

没有答案