【发布时间】:2024-09-21 07:10:02
【问题描述】:
我正在尝试使用 Java 7 的 WatchService 来监控文件夹。我希望它监视添加到使用 WatchService 注册的路径的任何文件或文件夹。
如果我将文件夹添加到注册路径,它会正确检测为 ENTRY_CREATE 并在 watchEvent.context() 中返回文件夹的名称。但是,如果我向该文件夹中添加一个文件夹而不是再次检测到它,但 watchEvent.context() 返回相同的文件夹和 ENTRY_MODIFY,因为该文件夹已通过添加另一个文件夹进行了修改。
所以我理解这一点,但不知道我是否应该注册结构中的每个文件夹,或者只注册*文件夹并监听或创建和修改
【问题讨论】:
-
docs.oracle.com/javase/tutorial/essential/io/examples/… 应该很有用,它展示了如何通过遍历 FileTree 递归地添加 WatchKeys
标签: java nio nio2 watchservice