使用apache common-io 监控文件变化
2016-06-05 18:21
549 查看
package common.io; import org.apache.commons.io.filefilter.FileFilterUtils; import org.apache.commons.io.monitor.FileAlterationListener; import org.apache.commons.io.monitor.FileAlterationMonitor; import org.apache.commons.io.monitor.FileAlterationObserver; import java.io.File; import java.util.concurrent.TimeUnit; /** * Created with IntelliJ IDEA. * User: superman * Date: 14-1-5 * Time: 上午11:43 * To change this template use File | Settings | File Templates. */ public class Example3 { public static void main(String[] args) throws Exception{ File directory = new File("D:/test"); // 轮询间隔 5 秒 long interval = TimeUnit.SECONDS.toMillis(5); // 创建一个文件观察器用于处理文件的格式 FileAlterationObserver observer = new FileAlterationObserver(directory, FileFilterUtils.and( FileFilterUtils.fileFileFilter(),FileFilterUtils.suffixFileFilter(".txt"))); //设置文件变化监听器 observer.addListener(new MyFileListener()); FileAlterationMonitor monitor = new FileAlterationMonitor(interval,observer); monitor.start(); //Thread.sleep(30000); //monitor.stop(); } }
final class MyFileListener implements FileAlterationListener{ @Override public void onStart(FileAlterationObserver fileAlterationObserver) { System.out.println("monitor start scan files.."); } @Override public void onDirectoryCreate(File file) { System.out.println(file.getName()+" director created."); } @Override public void onDirectoryChange(File file) { System.out.println(file.getName()+" director changed."); } @Override public void onDirectoryDelete(File file) { System.out.println(file.getName()+" director deleted."); } @Override public void onFileCreate(File file) { System.out.println(file.getName()+" created."); } @Override public void onFileChange(File file) { System.out.println(file.getName()+" changed."); } @Override public void onFileDelete(File file) { System.out.println(file.getName()+" deleted."); } @Override public void onStop(FileAlterationObserver fileAlterationObserver) { System.out.println("monitor stop scanning.."); } }
相关文章推荐
- WebSocket
- Apache自带的 ab(apache benchmark,基准测试,压力测试)使用
- 全站之路一路坑(2)——在Apache下部署django博客
- 严重: Servlet.service() for servlet jsp threw exception java.lang.NullPointerException at org.apache.
- apache url路由配置重写
- Android中无法访问本地Apache服务器原因
- Mac自带Apache搭建PHP开发环境(二)连接MySQL报错SQLSTATE[HY000] [2002] No such file or directory
- php apache mysql 64位
- linux apache + mysql +php no-yum
- twitter heron流计算系统总结 基本框架(一) --- 纸上谈兵
- linux apache + mysql +php
- Apache Flink fault tolerance源码剖析(四)
- CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙,配置apache
- 使用apache的BeanUtils封装数据
- apache 搭载PHP
- apache2.4 + PHP7 win7下的安装教程
- apache commons fileupload 持续集成(2016-05-27更新)
- apache commons fileupload 概述(2016-05-27更新)
- Apache服务器常规操作
- Apache的Order Allow,Deny 详解