我在 Windows 和 Mac OS 上都有一个用 Java 编写的基于文件系统的应用程序。
我的要求是跟踪对目录下的文件/文件夹所做的更改。要跟踪的操作是正常的文件级操作,如 CRUD 操作。当我的应用程序运行时,我可以从 java nio 运行监视服务并跟踪更改(尽管检测重命名仍然是监视服务中的问题)。
当我必须在应用程序未运行时检测更改时,我的问题就出现了。我读过文件备份软件是通过 Windows NTFS 的更改日志功能来完成的。
我的问题如下
(a) 更改日志 API 在 . NET 托管的 c# 代码(甚至在 Java 中)还是只能通过 c++ 获得,如示例中所示?(b) 在 HFS plus (mac os) 中是否提供更改日志或同等功能?如果是,是否有可用的 API(任何语言)?(c) 有没有更好的方法来跟踪应用程序未运行时文件系统中所做的更改?
干杯,
索拉夫