Вопрос

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();
Это было полезно?

Решение

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();

Другие советы

  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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top