FileAlterationMonitor监听目录下文件变化
工具类 FileMonitor
package com.ncs.wavtrans.utils;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;public class FileMonitor {FileAlterationMonitor monitor = null;public FileMonitor(long interval) throws Exception{monitor = new FileAlterationMonitor(interval);}public void monitor(String path,String threadName,FileAlterationListener listener) {//创建观察者FileAlterationObserver observer = new FileAlterationObserver(new File(path));monitor.addObserver(observer);//monitor.setThreadFactory(new BasicThreadFactory.Builder().namingPattern(threadName).daemon(false).build());observer.addListener(listener);}public void stop() throws Exception{monitor.stop();}public void start() throws Exception{monitor.start();}
}
文件监听类
package com.ncs.wavtrans.utils;import org.apache.commons.io.monitor.FileAlterationListener;
import org.apache.commons.io.monitor.FileAlterationObserver;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;import java.io.*;/*** @Description 文件监听类*/
public class FileListener implements FileAlterationListener {//日志private static Logger logger = LoggerFactory.getLogger(FileAlterationListener.class);/*** 轮询开始** @param fileAlterationObserver*/@Overridepublic void onStart(FileAlterationObserver fileAlterationObserver) {}/*** 目录创建** @param file*/@Overridepublic void onDirectoryCreate(File file) {}/*** 目录修改** @param file*/@Overridepublic void onDirectoryChange(File file) {}/*** 目录删除** @param file*/@Overridepublic void onDirectoryDelete(File file) {}/*** 文件创建执行** @param file*/@Overridepublic void onFileCreate(File file) {}/*** 文件修改** @param file*/@Overridepublic void onFileChange(File file) {}/*** 文件创建删除** @param file*/@Overridepublic void onFileDelete(File file) {}/*** 轮询结束** @param fileAlterationObserver*/@Overridepublic void onStop(FileAlterationObserver fileAlterationObserver) {}
}
创建文件目录监视器 (包括该目录下所有的子目录)
//监测的局点路径String listener = "E:/user/aaa/";FileMonitor m = null;try {// new FileMonitor(10); 参数为监控间隔时间m = new FileMonitor(10);} catch (Exception e) {logger.error("【监听文件】创建监听对象异常:\n", e);}//监控的文件创建操作m.monitor(listener, juDian, new FileListener() {@Overridepublic void onFileCreate(File file) {// 获取文件名称String fileName = file.getName();// 获取文件目录String filePath = file.getParent();}});
FileAlterationMonitor监听目录下文件变化相关推荐
- 【Python|第39期】监听目录取消文件只读属性
日期:2023年7月17日 作者:Commas 签名:(ง •_•)ง 积跬步以致千里,积小流以成江海-- 注释:如果您觉得有所帮助,帮忙点个赞,也可以关注我,我们一起成长:如果有不对的地方,还望各位 ...
- woo如何监听目录和文件变动,woo目录中的文件被改变,监听文件被修改权限
记录下woo语言监听文件和和文件夹变动后触发事件 非常完整的例子了. 注意由于文件监听属于工具类,则需要使用wop而不是woo print('file notify')-- 初始化监听实列 local ...
- FileSystemWatcher监听资源管理器,监听目录下的创建文件、删除文件、重命名文件
显示界面 实例化FileSystemWatcher FileSystemWatcher fileSystemWatcher = new FileSystemWatcher(); 初始化FileSyst ...
- linux+默认监听+目录,C# 时时监听目录文件改动
C# 时时监听目录文件改动: public static class DirectoryListen { public static string CountListXmlPath = CountCo ...
- 监听mysql表内容变化 使用canal_2 监听mysql表内容变化,使用canal
mysql本身是支持主从的(master slave),原理就是master产生的binlog日志记录了所有的增删改语句,将binlog发送到slave节点进行执行即可完成数据的同步. canal是阿 ...
- Linux中/proc目录下文件详解
Linux中/proc目录下文件详解(一) 声明:可以自由转载本文,但请务必保留本文的完整性. 作者:张子坚 email:zhangzijian@163.com 说明:本文所涉及示例均在fedora ...
- Python监控目录和文件变化
原文:https://www.cnblogs.com/lcamry/p/8392376.html Python监控目录和文件变化 一.os.listdir import os, time path_t ...
- Android开发动态的监听网络状态的变化
主要思路:使用Android中的四大组件之:BrocastReceiver监听网络状态的变化.接收到网络状态改变的广播之后判断当前的网络是否可用. 创建广播接收器MyNetworkReceiver p ...
- Linux中/proc目录下文件详解 /proc/devices文件 /proc/modules文件
http://blog.chinaunix.net/uid-10449864-id-2956854.html 原来对linux系统中的/proc目录不是很了解,只知道可以查看cpu,内存等相关的信息, ...
最新文章
- 黑客基础知识与防护(二)
- 莫比乌斯函数+莫比乌斯反演
- 第30本:《怎样解题》
- 网站内容为王?内容页的优化方法有哪些?
- android ondestroy service,android – 在onDestroy()之后仍然运行的IntentService onHandleIntent()...
- button标签设置隐藏和显示_离职后我隐藏一张工作表,老板找了一天没找到
- C#中的类型转换(转载)
- PKU四日游(信息科学夏令营)
- 3乘3魔方第四步_三阶魔方第四步
- SageX3和车辆排队系统、地磅系统集成方案
- 谈 Scratch 版“植物大战僵尸”
- 深圳一公司在开源社区表示“要源码上门自取”,引来百万粉大V突袭公司,结果让人意外!...
- 分类常用的神经网络模型,典型神经网络模型包括
- 等值连接mysql_数据库等值连接,左连接,右连接的区别
- 请设计一个宠物社交APP。
- 百度地图样式冲突问题
- 中日美印四国程序员碰到一起
- Intellij IDEA 去除警告波浪线(Weak Warning)
- 语音控制单片机(python做的上位机控制arduino)
- 微信公众号申请页面获取验证码BUG