我想逐行读取文件。BufferedReader 比 RandomAccessFile 或 BufferedInputStream 快得多。但问题是我不知道我读了多少字节。如何知道读取的字节数(偏移量)?我试过了。
String buffer;
int offset = 0;
while ((buffer = br.readLine()) != null)
offset += buffer.getBytes().length + 1; // 1 is for line separator
如果文件很小,我可以工作。但是,当文件变大时,偏移量会小于实际值。我怎样才能得到抵消?