C# FileSystemWatcher类

C# FileSystemWatcher类,c#,C#,我的问题是,为什么在使用FileSystemWatcher类监视excel文件的保存时间时,FileSystemEventArgs会返回.Deleted? 当监控.txt格式文件时,它会发生.Changed我想:因为Excel首先创建一个临时文件,在那里写入信息,然后删除原始的.xls文件并重命名临时文件 可能是Excel通过这种方式确保了在保存操作失败时原始文件不会丢失。看起来Excel很可能正在删除并重新创建您正在查看的文件。从经验上证明这一点的一种方法是让您的应用程序监视文件的运行,然后在

我的问题是,为什么在使用FileSystemWatcher类监视excel文件的保存时间时,FileSystemEventArgs会返回.Deleted?
当监控.txt格式文件时,它会发生.Changed

我想:因为Excel首先创建一个临时文件,在那里写入信息,然后删除原始的.xls文件并重命名临时文件


可能是Excel通过这种方式确保了在保存操作失败时原始文件不会丢失。

看起来Excel很可能正在删除并重新创建您正在查看的文件。从经验上证明这一点的一种方法是让您的应用程序监视文件的运行,然后在另一个应用程序(例如记事本)中打开并保存文件。如果这只会导致触发
Changed
事件,则会触发
Deleted
事件。

。通过使用SysInternals中的免费流程监控软件可以清楚地看到。