通过Java实时检测新创建的文件

Jon*_*ash 8 java file creation

使用JDK 7我已成功使用java.nio.file.StandardWatchEventKinds查看新文件创建,删除和修改的特定目录.*

我希望有人可能知道让Java检测新文件创建的方法,而不管它们的路径如何.

我想这样做,所以我可以为每个新写的文件计算MD5总和.

感谢您提供的任何建议.

Kel*_*nch 0

好吧,简短的回答是我不认为 Java 可以开箱即用地做到这一点。您必须拦截对操作系统的调用,这需要更接近裸机的东西,或者您可以按照另一个答案中的建议进行操作,并将侦听器注册到从根向下的每个文件夹,更不用说这种情况下的其他驱动器Windows 机器。

第一种方法需要自定义 JNI,它假设操作系统具有这样的挂钩并允许用户代码访问。

第二种方法可以工作,但可能会消耗大量内存来跟踪所有侦听器。在 Windows 中,右键单击 c:\ 并选择并查看我们正在讨论的文件夹数量。