我已经使用fileinputstream从文本文件中读取了一些数据,当它到达文本文件中的某个区域时,读取停止以执行其他进程[说进程A](它使用fileinputstream到目前为止读取的数据) 。启动的这个新进程使该文件输入流指向文件末尾。
我的问题是进程A完成后如何返回到fileinputstream离开的原始位置。我使用Java版本1.7
最佳答案
如果您一心想使用 FileInputStream
,您可以随时使用mark
和 reset
方法(如果它们受支持的话)。
但是,您也可以获得 FileChannel
来自FileInputStream#getChannel
(或者如果您想使用 Java 7,则使用 SeekableByteChannel
中的 Files#newByteChannel
)并使用 position
获取进程 A 和 position(long)
之前的流的位置在进程A之后重置流的位置。
关于java - 返回 FileInputstream 最后离开的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9287577/