Specific file monitor using Apache Commons VFS API

2019-07-23 19:07发布

I want to perform some operation after a file named (XXXXXX.txt) created in the specific directory. I just don't want to monitor the whole directory. How can i achieve this using Apache Commons VFS API? I tried with the below code, but it did not work out. Any idea about how to achieve this?

FileObject listendir1 = fsManager.resolveFile("C:\\Users\\Myname\\AppData\\Local\\Temp\\XXXXXXX.txt");
fileMonitor.addFile(listendir1);
fileMonitor.start();

2条回答
SAY GOODBYE
2楼-- · 2019-07-23 19:17

Try something like this:

 FileSystemManager fsManager = VFS.getManager();
 FileObject listendir = fsManager.resolveFile("/home/username/monitored/");
 DefaultFileMonitor fm = new DefaultFileMonitor(new CustomFileListener());
 fm.setRecursive(true);
 fm.addFile(listendir);
 fm.start();
查看更多
贪生不怕死
3楼-- · 2019-07-23 19:35
  1. Implement a custom monitor and over ride the fileCreated() method

  2. Create a concurrent queue which keeps the monitors of interest and remove it after use

查看更多
登录 后发表回答