您的位置:首页技术文章
文章详情页

java.nio.file.WatchEvent仅提供相对路径。如何获取修改后的文件的绝对路径?

【字号: 日期:2024-05-06 10:20:11浏览:31作者:猪猪
导读:如何解决java.nio.file.WatchEvent仅提供相对路径。如何获取修改后的文件的绝对路径??您需要从WatchKey获取父目录以解析完整路径WatchKey key;WatchEvent<Path> event;Path dir = (Path)key.watchable(...
如何解决java.nio.file.WatchEvent仅提供相对路径。如何获取修改后的文件的绝对路径??

您需要从WatchKey获取父目录以解析完整路径

WatchKey key;WatchEvent<Path> event;Path dir = (Path)key.watchable();Path fullPath = dir.resolve(event.context());

这段代码看起来像需要随附的文档一样,仅凭其本身就没有多大意义。他们对这种特定API设计的意图是什么?

这仅仅是可能不直观的用法的开始。Java的文件监视程序API在主观上不如其他库。

解决方法

我正在使用Java7和WatchService一起使用java.nio.file.WatchEvent。注册后,当我轮询ENTRY_MODIFY事件时,无法到达该事件文件的绝对路径。有什么方法可以从WatchEvent对象获取文件的绝对路径吗?

标签: java
相关文章: