Java检测文件系统中的更改

Emi*_*mil 8 java filesystems file

我有一个文件夹,其中不断传输新文件.在Java中,检测文件系统中更改的最佳方法是什么(即,文件被转储的指定文件夹),并将新到达的文件添加到队列数据结构,以便我可以顺序处理每个传入的文件.

我知道File类中的listFiles()函数,但是使用它我只能获得瞬间可用的文件.当然,我可以继续轮询文件夹并使用线程获取其中的文件列表.但这是最好的方法还是有更好的方法来实现这一点.

nos*_*nos 7

连续轮询是目前在Java中实现它的方法 - 虽然不经常轮询,但如果目录包含大量条目,则可能是一个非常繁重的操作.

JDK 7将具有用于执行此java.nio.file.WatchFile的特定API