JAVA读取一个正在不断写入的log文件

q106771992 2018-11-25 10:48:27
我想实现 一个功能,想来想去,没有好的解决方法,求路边大神指点
有一个LOG文件以行为单位,(主要是设备输出的错误消息) Log消息大部分是重复的,基本上是重复的内容只是时间不同

想实现功能,JAVA从文件是读取这个文件,把这个重复的内容,提取写入到另一个文件,这些内容只需要写一行即可了,不用重复。

不知道如何实现,请指教。谢谢
...全文
1054 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
叶遮沉阳 2018-12-03
  • 打赏
  • 举报
回复
一个正在不断写入的log文件,如何做到实时提取文件中的内容?
搬砖任 2018-12-03
  • 打赏
  • 举报
回复
你可以这样写:每次读取一行每次读取一行,去除中间的时间信息,然后把这个读取到的内容存到一个集合中(这个集合中的东西不允许重复的集合)然后读取完成后在写入到一个文件中
uuxin. 2018-11-30
  • 打赏
  • 举报
回复
楼上2人正解
qq_39936465 2018-11-26
  • 打赏
  • 举报
回复
说下自己的思路

读取一行log 文件进入字符串去除中间的时间信息,然后建立一个空list字符串数组,然后和读入的log 字符串比对,内容不同的存入list,内容相同的舍弃,把最终的list 重新写入另一个文件。
spencer_chen 2018-11-26
  • 打赏
  • 举报
回复
RandomAccessFile
nobody@noone 2018-11-26
  • 打赏
  • 举报
回复
使用RandomAccessFile,每次记录读了多少,下次就偏移多少,


public static void main(String[] args) throws Exception {
RandomAccessFile f = new RandomAccessFile("D:\\1.txt","r");
f.seek(5);
System.out.println(f.readLine());
}
zhtoad 2018-11-25
  • 打赏
  • 举报
回复
是呀,这个用stringbuffer不行呀

62,635

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧