首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于Java6的WatchService

用于Java6的WatchService
EN

Stack Overflow用户
提问于 2011-11-01 23:07:57
回答 3查看 13.7K关注 0票数 16

Java7引入了WatchService来持续监控文件系统。有Java 6的后端口吗?

是否存在具有类似功能的纯Java库?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-02 16:22:04

是的,当然。Apache VFS就是这样做的。您可以在http://commons.apache.org/vfs/下找到它。它是一个纯java库,可以监控文件,并且非常容易使用:

代码语言:javascript
复制
FileSystemManager manager = VFS.getManager();
FileObject file= manager.resolveFile("c:/MyFile.txt");

DefaultFileMonitor fm = new DefaultFileMonitor(new MyListener());
fm.setDelay(5000);
fm.addFile(file); 
fm.start();

上面的代码将监视文件c:/MyFile.txt。如果它发生了变化,将调用对象new MyListener()。

票数 15
EN

Stack Overflow用户

发布于 2011-12-09 23:28:32

纯Java库不可能做到这一点;如果您想要避免轮询,就需要一个本机组件。

http://wiki.netbeans.org/NativeFileNotifications提供了一些关于可用的本机API和包装它们的各种Java库的信息。

票数 5
EN

Stack Overflow用户

发布于 2011-11-01 23:16:36

Jetbrains IntelliJ IDEA有一个组件'Virtual File System‘,它触发一个本地文件系统监视器,通知底层文件系统更改回IDEA。两年来,Jetbrains一直在发布一个开源版本,其中应该包含该组件。它适用于Java 6。

它是在FAQ page中声明的Apache2.0许可下发布的。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7968488

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档