我在服务器(.txt文件)中有500 MB的日志文件。我的要求是我只想要最后1 MB的数据。正如我们所知,如果我使用java代码读取整个文件会导致问题,这可能会导致应用程序的可用性问题。我不知道如何获取最后一个MB数据,还没有开始编码。任何人都可以给我一些建议吗?
先谢谢,
拉吉
答案 0 :(得分:1)
我在服务器(.txt文件)中有500 MB的日志文件。我的要求是我只想要最后1 MB的数据。
你可以跳过最后1 MB并阅读它。但是你可能会得到一条不完整的行。
正如我们所知,如果我使用java代码读取整个文件会导致问题,这可能会导致应用程序的可用性问题。
只有你编码很差。没有好的阅读它会做到这一点。但是,如果您知道只需要最后1 MB,则没有良好的读取读取500 MB。
我不知道如何获取最后一个MB数据并且还没有开始编码。任何人都可以给我一些建议吗?
开始编码,阅读文档,特别是跳过功能。
答案 1 :(得分:1)
对于你的问题,你只需要使用一个随机访问文件,并使用seek()方法将光标放在最后减去1mb ... 请阅读java.io.RandomAccessFile javadoc,尤其是seek()注释...
HTH 杰罗姆