我有一个抓取程序,可以记录一些文件。有时在服务器上,会发生一些错误,爬虫会创建大量的日志文件,这些文件在某种程度上无法解析。出于这个原因,我想创建一个简单的程序,它在日志文件的末尾读取大约1000个字符并向我显示消息(即使爬虫仍在写入该文件)。这将帮助我在不关闭爬虫的情况下解决问题。
答案 0 :(得分:11)
使用RandomAccessFile到seek,然后read你的字节数。
File file = new File("DemoRandomAccessFile.out");
RandomAccessFile raf = new RandomAccessFile(file, "r");
// Seek to the end of file
raf.seek(file.length() - n);
// Read it out.
raf.read(yourbyteArray, 0, n);
答案 1 :(得分:3)
计算机上已有一个方便的命令行工具。 tail -c 1000
会做你要求的。打印出最后10行的tail -n 10
可能更有用。
答案 2 :(得分:2)