0

我想在 Delphi中获取文件的最后修改时间。

通常类似的东西FileAge()可以解决问题,唯一的问题是:如果我用文件 B覆盖*文件 A * ,文件 A 的修改日期不会像当前覆盖时间那样更新(?)CopyFile

我明白了:CopyFile也复制文件属性,但我真的需要获取在文件被覆盖时也有效的修改日期。

有这样的功能吗?我的整个应用程序依赖于修改时间来决定我是否应该继续处理文件!


编辑只是为了澄清:我只是在监视文件。修改它们的不是我的应用程序。

4

1 回答 1

1

的文档CopyFile说:

现有文件的文件属性被复制到新文件中。

这意味着您不能基于文件的最后修改属性或文件的任何属性来使用您的程序。确实有各种方法可以改变文件的最后修改属性。事实上,它可以及时倒退。

相反,我建议您使用ReadDirectoryChangesW来跟踪修改。这将允许您在文件被修改时接收通知。您可以基于ReadDirectoryChangesWAPI 以基于事件的方式编写程序。

如果您不能使用ReadDirectoryChangesW文件属性,那么您将不得不根据文件的内容做出决定。

于 2013-01-23T19:40:52.843 回答