通过Java监控文件系统变化

 2023-01-20    303  

问题描述

我想通过Java在系统上使用选定目录进行监视更改.我对Java 7中的 WatchService 有点想法,但是WatchService仅返回到更改事件(修改,删除)的目录名称. 在另一边,我希望所有有关更改的信息,例如用户进行更改,发生更改的时间等.

这就像想阅读NTFS文件系统上的更改期刊一样. Java中还有其他可用的方法可以异步记录此类更改吗? …

通过Java监控文件系统变化

预先感谢.

推荐答案

不确定您是否有能力将导入库添加到您的项目中,但是Commons-io具有可能适合您需求的FilealTerationObserver:

其他推荐答案

如果您使用的是Java7,请查看 java.nio.file.filesystem
和 WatchService

有关更多信息,请参阅 oracle教程

其他推荐答案

如果您只想在发生某些事情时得到通知,则可以使用答案中发布的一个库.

如果您想使用一个小示例自己做(并且您仅限于Windows),请查看此有关Java本机接口的文章.使用 readdirectorychanges 您可以决定接收异常通知.

如果您真的需要知道谁做出了改变,那么…祝您好运!对于我所知道的(仅适用于Windows),这不是一个简单的主题,因为Windows不能保存该信息.您可以通过对象审计,但是您必须启用它,并且它将减慢您的系统.看看此帖子有关某些详细信息.

以上所述是小编给大家介绍的通过Java监控文件系统变化,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/26114.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。