用java实现文件输入的监控 小弟最近遇到麻烦,我要对一个log文件进行处理,但是这个log文件时实时更新的,如何用java保证我能够及时处理掉这些log呢?如何对其进行实时监控?并实时处理呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 用Timer吧。处理日志文件时记录下上次读取到的行数,以及上次更新的时间。当文件修改时间变了之后再从上次读到的行数继续往下读。 最好的是用LogFileTailer http://code.google.com/p/peter-bochs/source/search?q=log&origq=log&btnG=Search+Trunk用法:LogFileTailer tailer = new LogFileTailer(new File("jmp.log"), 1000, false);tailer.addLogFileTailerListener(this); 使用jdk7的话,现在也有文件系统监视了 已经使用了这个方法,现在能够实时地输出日志文件了。像这样:public void newLogFileLine(String line) { System.out.println(line);}但是当我在这个函数中加入字符串处理代码的时候,程序就开始出错了。不停地处理同样一行log(就是更新后第一个被加入的那行)这是什么问题呢? 绘制图形问题 如何将jsp数据导出到excel [请教]关天时间函数输出问题 请教高手,JAVA连接数据库有关的问题 问:静态变量消耗内存多还是静态类消耗内存多呢?? UCS2编码的字符串如何转换成普通字符串? 用sql语句删除树结点后,树怎么刷新?? 后台JAVA程序能否接收和处理事件? IIS+resin,class文件应该放在哪? <%@ contentType="text/html;charset=gb2312" %>谁能解释一下他的意思? 求助各位大神 JSP servlet方面的 反序列化时抛出了IllegalAccessException
处理日志文件时记录下上次读取到的行数,以及上次更新的时间。
当文件修改时间变了之后再从上次读到的行数继续往下读。
LogFileTailer tailer = new LogFileTailer(new File("jmp.log"), 1000, false);
tailer.addLogFileTailerListener(this);
public void newLogFileLine(String line) {
System.out.println(line);
}但是当我在这个函数中加入字符串处理代码的时候,程序就开始出错了。不停地处理同样一行log(就是更新后第一个被加入的那行)这是什么问题呢?