获取文件后半部分的InputStream的最佳方法是什么?

时间:2012-01-25 22:57:17

标签: java java-io

我需要一个InputStream来读取File中的一些非零偏移量。这是获得和定位流的更高效的方式,

InputStream in = new FileInputStream(file);
in.skip(n);

RandomAccessFile raf = new RandomAccessFile(file, "r");
InputStream in = Channels.newInputStream(raf.getChannel().position(n));

或者你有更好的方法吗?

只会从文件中提取一个流,因此重用RandomAccessFile没有任何好处。

1 个答案:

答案 0 :(得分:2)

在幕后我相信这些方法的工作方式完全相同(对于覆盖skip的默认实现的FileInputStreams)。因此,性能没有明显差异。

您可能对其他related question感兴趣。