hyfm.net
当前位置:首页 >> jAvA如何在linux下监听某个目录下是否有文件改变? >>

jAvA如何在linux下监听某个目录下是否有文件改变?

一开始,读取一份,记住.然后每隔一定时间,刷新看看,对比一下,有没有变化再看看别人怎么说的.

java 的WatchService 类提供了一种方式可以检查try{WatchService watchService = FileSystems.getDefault().newWatchService();Path path = Paths.get(pathName);// 注册监听器path.register(watchService,StandardWatchEventKinds.ENTRY_

方法一修改catalina.sh,添加下面一行:catalina_opts="$catalina_opts -dcom.sun.management.jmxremote=true -djava.rmi.server.hostname=192.168.1.106 -dcom.sun.management.jmxremote.port=8086 -dcom.sun.management.jmxremote.ssl=

可以自己写定时任务,或者用现成的包.commons-io-2.3.jar 中,有实现文件监控的类.可以学习这个:http://blog.csdn.net/masternick/article/details/12197141http://blog.csdn.net/u012083681/article/details/20689381

写一个java类,遍历改路径Logs_xxx\dropbox的文件夹,循环读取里面的所有文件然后打开并读取每个文件的内容就行.至于用循环+sleep()还是判断文件大小改变了,你就去读取文件这个你看哪个简单

使用 commons-io 中的文件监控 package org.demo.file;import java.util.concurrent.TimeUnit;import org.apache.commons.io.filefilter.FileFilterUtils;import org.apache.commons.io.monitor.FileAlterationMonitor;import org.apache.commons.io.monitor.

jdk7 新增了WatchService,就是监控文件夹变化的.可以监控 新增、改变、删除等.如果不能用 jdk7,就需要自己判断了,得到目录文件,每隔几秒,再次检测,是否有增加、删除、改变

用途说明 tail命令可以输出文件的尾部内容,默认情况下它显示文件的最后十行.它常用来动态监视文件的尾部内容的增长情况,比如用来监视日志文件的变化.与tail命令对应的是head命令,用来显示文件头部内容.常用参数 格式:tail file 输出

从编程实现上来说,linux下做这个事情,要比windows上做简单,windows上有相关API提供接口,比如VC下的ReadDirectoryChanges函数,但其实它的功能并不是很完善,我之前曾经做过一个windows下类似的工具,如果要做到很完善的功能

我没法给你源码,但可以给你思路:【最简单粗暴的】1. 写一个死循环2. sleep 个 100 毫秒3. 第一次启动建立一个HashMap<File, Date>,扫描所有文件并读取创建日期记录下来(包括子文件夹)4. 记录全部文件的数量 fileCount, lastFileCount5. 检查是否数量有变,如果木有就没有新增文件6. 如果有变化,.你懂的,再扫找出不在HashMap里面的就是新增的了【特殊参考】参考tomcat、jboss这类服务器软件如何扫面检测部署文件夹下面文件变动的【高阶】参考防毒软件设计原理,截获系统IO,有对你指定文件夹的Access操作时,按需记录

相关文档
网站首页 | 网站地图
All rights reserved Powered by www.hyfm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com