猿问
快速阅读文本文件的最后一行?
快速阅读文本文件的最后一行?
从Java中的[非常非常大的]文件中读取最后一行文本的最快捷,最有效的方法是什么?
红糖糍粑
浏览 441
回答 3
3回答
猛跑小猪
看看我对C#的类似问题的答案。虽然Java中的编码支持有些不同,但代码非常相似。基本上,一般来说,这不是一件非常容易的事情。正如MSalter所指出的那样,UTF-8确实很容易发现,\r或者\n因为这些字符的UTF-8表示与ASCII相同,并且这些字节不会出现在多字节字符中。所以基本上,取一个(比方说)2K的缓冲区,然后逐步向后读(在你之前跳到2K,读下一个2K)检查线路终止。然后跳到流中正确的位置,InputStreamReader在顶部创建一个,在顶部创建一个BufferedReader。然后打电话BufferedReader.readLine()。
0
0
0
九州编程
Apache Commons有一个使用RandomAccessFile的实现。它叫做ReversedLinesFileReader。
0
0
0
随时随地看视频
慕课网APP
相关分类
Java
我要回答