我不确定我问的是否可行,但我想做以下事情: 在某个文件夹(Windows)中创建文件时,我的程序应该响应。我想让Windows在创建文件时调用回调方法。
另一种选择当然只是使用循环并不断检查文件夹中是否有新文件,但我想立即知道它,因此回调方法会更有效。
这可能吗?虽然Java是首选,但语言并不重要。
答案 0 :(得分:7)
使用Java nio 2(Java 1.7 +中提供),您可以"watch" a directory并在该目录更改时收到通知。
上面链接的教程中提出的方法使用WatchService
API。
答案 1 :(得分:1)
Commons IO包含FileAlterationListener
,其onDirectoryChange
方法。如果Java 1.7不可用,则可以替代。
答案 2 :(得分:0)
如果你没有绑定Java,那么你可以在C#或VisualBasic中使用非常方便的FileSystemWatcher。它允许您观察文件夹中可能发生的各种事件,并且很容易实现它。