什么是读取文本文件中的新条目的好方法,该文本文件不断被另一个线程更新而不会造成太大的系统压力?
- 只有新条目被附加,我想逐行读取,处理它们,然后将它们输出到新文件中。
- 日志文件在被删除之前可能会增长到几 GB 并且大约有 500 万行。
- 日志文件和此代码都将在带有 Java 7 的 64 位 Windows 7 上运行(如果重要的话)。
我对编程很陌生,所以有人愿意提供一些示例代码吗?谢谢。
Apache Commons 有一个Tailer类。
除此之外,我想你可以打开一个 BufferedReader,如果 readLine 返回 null (换句话说,已经到达文件末尾),则睡眠。
但是 Apache Tailer 类要好得多,可以处理滚动日志文件等。