如何找出已重命名的文件

本文关键字:文件 重命名 何找出 | 更新日期: 2023-09-27 17:50:56

如何检测文件是否已重命名?

我正在使用Poll方法,而不是系统文件监视器方法。

目前,我可以通过LastWriteTime属性(在文件资源管理器中定义日期)检测System.IO.File对象的更改。但是,当重命名文件时,我看不到任何属性(如日期属性)更改日期。

如何使用轮询方法检测文件重命名?

有趣的是,文件所在的目录在重命名文件时更改日期。

如何找出已重命名的文件

我必须在一个阶段对一小组文件执行此操作,在这种情况下,我存储每个文件的文件路径,以及每次轮询时创建日期和文件大小。

然后每次随后的轮询,我都能够检测到上次轮询中现在"丢失"的文件。然后,我将交叉检查创建时间和文件大小,以检测是否有一些新文件与一些丢失的文件匹配。如果我得到一个匹配,我假设一个重命名。

但请注意,它可能不是安全/100%准确的;您可能有多个文件具有相同的创建日期和文件大小等。在我的例子中,它是使用生成的照片,我也能够检查exif数据作为最后的验证。根据您的情况,您可能需要对其他数据进行验证。