我想做的是,当我使用初始化的 bufferedReader 时,我用它来使用 readLine() 从文件中读取行,当我到达末尾时作为示例,我想使用相同的 bufferedReader
对象从同一文件的开头读取行。
我试图实现这个问题的是,我使用了mark()
和reset()
,在初始化bufferedReader
之后我设置bufferReaderobject.mark(0)
,我读取了整个文件,之后我使用了 bufferReaderobject.reset()
并再次读取了整个文件,但随后引发了异常。看来 reset()
仅在未到达文件末尾时有效。
有没有办法将先前初始化的 bufferedReader
重置为流的开头?
最佳答案
为了能够以这种方式使用 reset()
,整个文件必须适合 BufferedReader
的缓冲区。
这意味着您必须创建一个具有足够大缓冲区的 BufferedReader
,或者在您想要再次读取文件时创建一个新实例。
关于java - 有没有办法将先前初始化的 `bufferedReader` 重置为流的开头?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27567221/