0

有没有办法查看调用 OnChanged 时到底发生了什么变化?我正在尝试过滤掉文件属性更改。

4

3 回答 3

2

您可以使用NotifyFilter属性来指定要观察的更改类型。正如 Rotem 已经说过的那样,FileSystemEventArgs该类还提供了一些更改信息。

于 2013-10-09T18:49:51.147 回答
2

该方法提供 type 的参数FileSystemEventArgs,它提供有关更改的类型和路径的数据。

您可以使用它来仅过滤WatcherChangeTypes.Changed值,即:

文件或文件夹的更改。更改的类型包括:大小、属性、安全设置、上次写入和上次访问时间的更改。

有关此答案的补充信息,请参阅@Oliver 的答案,我正要补充:)

于 2013-10-09T18:47:44.370 回答
0

我认为您无法过滤掉与更改了哪些属性一样精细的任何内容。您可以使用该NotifyFilters属性来指定您只想在文件属性发生更改时引发事件。每次更改发生时都会引发该事件,因此您可以响应该事件只需FileInfo使用提供的文件路径创建一个类并检查新属性。

于 2013-10-09T18:52:29.080 回答