『提问』java中怎样监视某个文件变化? 请问java中怎样监视某个文件变化? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 重新说一下需求:有个文本文件:test.txt ,有个程序随时都会往里面追加数据,我需要监视该文本文件,并于该程序写完数据后的空档时读取新追加的数据,请问怎么实现这个监听功能? lbfhappy(千里冰封) 的思路是正确的~~~~~~~~~~~~~~~~~ 每次写完后,把这个文件(如 test.txt)的长度存到一个变量中(如 oldFileSize ),用一个线程来监控 test.txt 的大小,将之与 oldFileSize 作比较,如果有变化,则 RandomAccessFile raf = new RandomAccessFile("test.txt" , "wb"); raf.seek(oldFileSize); File file = new File("c:/test.txt"); RandomAccessFile raf= new RandomAccessFile(file,"rw"); raf.seek(4); byte[] buf = new byte[58]; int size = raf.read(buf); String yourNeedStr = new String (buf, 0, size); 其中yourNeedStr中就是你想要的内容了. CSDN - 专家门诊 - Java J2SE / 扩展类问题 回复 | 推荐 | 收藏 | 专题 | 公告 | 管理 | 关闭窗口 主 题: 『提问』java中怎样监视某个文件变化?作 者: gongzhy (2369)等 级: 信 誉 值: 100所属论坛: Java J2SE / 扩展类问题点数: 20回复次数: 8发表时间: 2006-9-1 11:54:15 请问java中怎样监视某个文件变化? 回复人:fishyqd(小鱼儿-屯粮,接分) ( 四级(中级)) 信誉:100 2006-9-1 13:56:13 得分:0? 监视变化是什么意思?内容改变,还是删除,等等操作?Top 回复人:gongzhy(2369) ( 一级(初级)) 信誉:100 2006-9-1 13:59:50 得分:0? 文件内容变化,比如增加了等等Top 回复人:gongzhy(2369) ( 一级(初级)) 信誉:100 2006-9-1 14:18:30 得分:0? 重新说一下需求:有个文本文件:test.txt ,有个程序随时都会往里面追加数据,我需要监视该文本文件,并于该程序写完数据后的空档时读取新追加的数据,请问怎么实现这个监听功能?Top 回复人:lbfhappy(千里冰封) ( 四级(中级)) 信誉:100 2006-9-1 14:48:48 得分:0? 起一个线程,去读取这个文件里面的内容,当内容有变化的时候,就可以做你想做的事了还有,要记得线程同步问题Top 回复人:cuiyue4420(流畅) ( 一级(初级)) 信誉:100 2006-9-1 16:41:31 得分:0? 输出出来Top 回复人:lky5387() ( 一级(初级)) 信誉:100 2006-9-1 17:04:55 得分:0? lbfhappy(千里冰封) 的思路是正确的~~~~~~~~~~~~~~~~~Top 回复人:dengy1979(笨笨) ( 一级(初级)) 信誉:100 2006-9-1 18:30:25 得分:0? 每次写完后,把这个文件(如 test.txt)的长度存到一个变量中(如 oldFileSize ),用一个线程来监控 test.txt 的大小,将之与 oldFileSize 作比较,如果有变化,则RandomAccessFile raf = new RandomAccessFile("test.txt" , "wb");raf.seek(oldFileSize);File file = new File("c:/test.txt");RandomAccessFile raf= new RandomAccessFile(file,"rw");// raf.seek(4); // 上面答复中的此句应去掉,只是我测试时用的byte[] buf = new byte[1024]; int size = raf.read(buf);String yourNeedStr = new String (buf, 0, size);其中yourNeedStr中就是你想要的内容了. 还要考虑一个问题,假设该文件为一个日志文件,有一天被人清空了,怎么处理啊?还有设置一个point文件指针,但程序异常结束或人为结束,point不就又从头开始了 Java基础 如何隐藏和显示JTabbedPane的选项卡,快速结贴 请教:判断字符串内容的方法 继承访问问题不明白! HttpURLConnection请求图片,为何返回数据这么少? 奇怪的异常:Jtable中发生的 关于泛类型的问题 新问题,关于java的运行速度问题 关于hashCode()的问题,请大家帮忙看看!!!! 如何将ASCII值转换为键盘上的某一特殊键? 开发java web用什么工具好 =========我最近问了些问题, 都得到了很好的回答,但是?===========
有个文本文件:test.txt ,有个程序随时都会往里面追加数据,我需要监视该文本文件,并于该程序写完数据后的空档时读取新追加的数据,请问怎么实现这个监听功能?
RandomAccessFile raf = new RandomAccessFile("test.txt" , "wb");
raf.seek(oldFileSize);
File file = new File("c:/test.txt");
RandomAccessFile raf= new RandomAccessFile(file,"rw");
raf.seek(4);
byte[] buf = new byte[58];
int size = raf.read(buf);
String yourNeedStr = new String (buf, 0, size);
其中yourNeedStr中就是你想要的内容了.
CSDN - 专家门诊 - Java J2SE / 扩展类问题
回复 | 推荐 | 收藏 | 专题 | 公告 | 管理 | 关闭窗口
主 题: 『提问』java中怎样监视某个文件变化?
作 者: gongzhy (2369)
等 级:
信 誉 值: 100
所属论坛: Java J2SE / 扩展类
问题点数: 20
回复次数: 8
发表时间: 2006-9-1 11:54:15
请问java中怎样监视某个文件变化?
回复人:fishyqd(小鱼儿-屯粮,接分) ( 四级(中级)) 信誉:100 2006-9-1 13:56:13 得分:0
? 监视变化是什么意思?内容改变,还是删除,等等操作?
Top
回复人:gongzhy(2369) ( 一级(初级)) 信誉:100 2006-9-1 13:59:50 得分:0
? 文件内容变化,比如增加了等等
Top
回复人:gongzhy(2369) ( 一级(初级)) 信誉:100 2006-9-1 14:18:30 得分:0
? 重新说一下需求:
有个文本文件:test.txt ,有个程序随时都会往里面追加数据,我需要监视该文本文件,并于该程序写完数据后的空档时读取新追加的数据,请问怎么实现这个监听功能?
Top
回复人:lbfhappy(千里冰封) ( 四级(中级)) 信誉:100 2006-9-1 14:48:48 得分:0
? 起一个线程,去读取这个文件里面的内容,当内容有变化的时候,就可以做你想做的事了
还有,要记得线程同步问题
Top
回复人:cuiyue4420(流畅) ( 一级(初级)) 信誉:100 2006-9-1 16:41:31 得分:0
? 输出出来
Top
回复人:lky5387() ( 一级(初级)) 信誉:100 2006-9-1 17:04:55 得分:0
? lbfhappy(千里冰封) 的思路是正确的~~~~~~~~~~~~~~~~~Top
回复人:dengy1979(笨笨) ( 一级(初级)) 信誉:100 2006-9-1 18:30:25 得分:0
? 每次写完后,把这个文件(如 test.txt)的长度存到一个变量中(如 oldFileSize ),用一个线程来监控 test.txt 的大小,将之与 oldFileSize 作比较,如果有变化,则
RandomAccessFile raf = new RandomAccessFile("test.txt" , "wb");
raf.seek(oldFileSize);
File file = new File("c:/test.txt");
RandomAccessFile raf= new RandomAccessFile(file,"rw");
// raf.seek(4); // 上面答复中的此句应去掉,只是我测试时用的
byte[] buf = new byte[1024];
int size = raf.read(buf);
String yourNeedStr = new String (buf, 0, size);
其中yourNeedStr中就是你想要的内容了.
还有设置一个point文件指针,但程序异常结束或人为结束,point不就又从头开始了