Java利用WatchService监听文件变化示例

  

在实现配置中心的多种方案中,有基于JDK7 +的WatchService方法,其在单机应用中还是挺有实践的意义的。

  

代码如下:

        包com.longge.mytest;      进口java.io.IOException;   进口java.nio.file.FileSystems;   进口java.nio.file.Path;   进口java.nio.file.Paths;   进口java.nio.file.StandardWatchEventKinds;   进口java.nio.file.WatchEvent;   进口java.nio.file.WatchKey;   进口java.nio.file.WatchService;   进口并不知道;/* *   *测试JDK的WatchService监听文件变化   * @author yangzhilong   *   */公开课TestWatchService {   公共静态void main (String [] args)抛出IOException {//需要监听的文件目录(只能监听目录)   字符串路径=" d:/测试”;      .newWatchService WatchService WatchService=FileSystems.getDefault () ();   p=Paths.get路径(路径);   p。注册(watchService StandardWatchEventKinds.ENTRY_MODIFY,   StandardWatchEventKinds.ENTRY_DELETE,   StandardWatchEventKinds.ENTRY_CREATE);      线程的线程=新线程(()→{   尝试{   而(真){   WatchKey WatchKey=watchService.take ();   List之前      

运行示例结果类似如下:

  

(d:/测试/1。txt]文件发生了【修改】事件
  [d:/测试/1。txt]文件发生了[ENTRY_DELETE]事件
  [d:/测试/新建文本文档。txt]文件发生了[ENTRY_CREATE]事件
  [d:/测试/新建文本文档。txt]文件发生了[ENTRY_DELETE]事件
  [d:/测试/222. txt]文件发生了[ENTRY_CREATE]事件

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

Java利用WatchService监听文件变化示例