使用Apache Commons VFS API的特定文件监视器

时间:2013-01-17 10:14:42

标签: java vfs apache-commons-vfs file-monitoring

我想在特定目录中创建名为(XXXXXX.txt)的文件后执行某些操作。我只是不想监视整个目录。如何使用Apache Commons VFS API实现这一目标?我尝试使用下面的代码,但它没有成功。有关如何实现这一目标的任何想法吗?

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

2 个答案:

答案 0 :(得分:0)

尝试这样的事情:

 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 :(得分:0)

  1. 实施自定义监视器并覆盖fileCreated()方法

  2. 创建一个并发队列,用于保存感兴趣的监视器并在使用后将其删除