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

标签 java file creation

使用 JDK 7,我已经成功地使用 java.nio.file.StandardWatchEventKinds 监视特定目录的新文件创建、删除和修改。*

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

我想这样做是为了计算每个新写入文件的 MD5 和。

感谢您提供的任何建议。

最佳答案

好吧,简短的回答是我不认为 Java 可以开箱即用。您必须拦截对操作系统的调用,这需要更接近裸机的东西,或者您可以按照 another answer 中的建议进行操作。并为从根目录向下的每个文件夹注册监听器,更不用说 Windows 机器上的其他驱动器了。

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

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

关于java - 通过 Java 实时检测新创建的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8796917/

相关文章:

java - 我们可以用java读取swf文件吗?

php - 删除具有相同前缀的文件

javascript - 另一个文件中的 JQuery 代码

c - 在c中的windows中创建文件夹的日期

c++ - OF_SHARE_DENY_NONE 不分享阅读?

Java MongoDB 查询

java - 在Java中计算度中心性

java - 何时在 Swing 应用程序中显示无效输入的错误消息

java - 根据点偏移计算方向

java - H2 createTcpServer() 不创建服务器?