5

我不确定我的要求是否可行,但我想做以下事情:在某个文件夹(Windows)中创建文件时,我的程序应该响应。我想让 Windows 在创建文件时调用回调方法。

另一种选择当然是使用循环并不断检查文件夹中是否有新文件,但我想立即知道它,所以回调方法会更有效。

这可能吗?语言并不重要,尽管 Java 是首选。

4

3 回答 3

7

使用 Java nio 2(在 Java 1.7 + 中可用),您可以“监视”一个目录并在该目录更改时收到通知。

上面链接的教程中提出的方法使用WatchServiceAPI

于 2012-08-20T11:51:05.557 回答
1

Commons IO包含FileAlterationListener一个onDirectoryChange方法。如果 Java 1.7 不可用,可以作为替代方案。

于 2012-08-20T12:01:50.170 回答
0

如果您没有绑定到 Java,那么您可以在 C# 或 VisualBasic 中使用非常方便的FileSystemWatcher 。它将允许您观看文件夹中可能发生的各种事件,并且很容易实现它。

于 2012-08-20T12:17:13.123 回答