java如何实现linux下实时监控文件是不是有变化
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何实现linux下实时监控文件是不是有变化相关的知识,希望对你有一定的参考价值。
java 的WatchService 类提供了一种方式可以检查try
WatchService watchService = FileSystems.getDefault()
.newWatchService();
Path path = Paths.get(pathName);
// 注册监听器
path.register(watchService,
StandardWatchEventKinds.ENTRY_CREATE,
StandardWatchEventKinds.ENTRY_DELETE);
while (true)
// 阻塞方式,消费文件更改事件
List<WatchEvent<?>> watchEvents = watchService.take()
.pollEvents();
for (WatchEvent<?> watchEvent : watchEvents)
System.out.printf("[%s]文件发生了[%s]事件。%n", watchEvent
.context(), watchEvent.kind());
catch (Exception e)
参考技术A File file = new File("path");//所属文件夹的路径 if(file.isDirectory()) File[] files = file.listFiles(); if(files.length > 0) System.out.println("有文件"); else System.out.println("空文件夹,没有文件");
以上是关于java如何实现linux下实时监控文件是不是有变化的主要内容,如果未能解决你的问题,请参考以下文章
(转)Linux下通过rsync与inotify(异步文件系统事件监控机制)实现文件实时同步