我正在使用JDK7的WatchService来监控目录。
ENTRY_DELETE
事件告诉我一个条目已被删除。我可以通过类似的方式获得该条目的名称:
WatchEvent<Path> ev = cast(event);
Path name = ev.context();
Path child = dir.resolve(name);
我想知道删除的条目是文件还是文件夹。当然,我尝试了child.isDirectory()
,但这不起作用,当然,因为这个元素已经不存在了。
有没有办法在没有启发式的情况下,判断被删除的元素是一个文件还是一个目录?
发布于 2010-07-09 06:23:08
不幸的是,由于WatchService构建在本机操作系统的文件事件服务之上,因此它受到本机服务提供的信息的限制。Linux的inotify确实指出了被删除的文件系统对象的类型,但微软的FileSystemWatcher只是给出了名称。
https://stackoverflow.com/questions/3207385
复制相似问题