1

可能重复:
Java:快速读取文本文件的最后一行?

我们的大型机系统正在发送一个包含标题、详细记录和预告片的文件。我只想将这些详细信息记录保存到我的数据库中

  1. 该文件是一个有效文件 - 即具有有效标题、详细记录和预告片的文件。
  2. 详细记录计数等于拖车记录中的计数。

我的目标是先读取最后一行而不读取整个 1GB 文件。

AAGSDBGBBM337 2012-03-16165620000001 - Header format
Detailed Record 1
Detailed Record 2
Detailed Record 3
ZZGSDBGBBM337 2012-03-161656200000010000003 - Trailer format

有什么建议么 ?

4

3 回答 3

1

你看过Apache Commons IO Tailer类吗?

编辑:查看source,它似乎只识别附加到文件的新行,而不是让您读取现有文件的最后一行(例如)。所以就目前而言,它是不合适的。但是,在执行初始操作时将其修改为向后看是微不足道的seek()

于 2012-10-09T14:23:24.300 回答
1

您可以使用的skip方法FileInputStream跳过文件的前 n 个字节。您也可以将RandomAccessFile用于相同目的。

于 2012-10-09T14:24:08.283 回答
0

请在 Werner Vesterås 的第一条评论中找到解决了我的问题的链接

其他所有建议都有意义,感谢您的发帖。

于 2012-10-09T16:48:06.960 回答