首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

FileSystemWatcher的有关问题,请高手帮助

2012-01-19 
FileSystemWatcher的问题,请高手帮助我用FileSystemWatcher检测文件是否更新.代码如下FileSystemWatcherfs

FileSystemWatcher的问题,请高手帮助
我用   FileSystemWatcher   检测文件是否更新.代码如下
  FileSystemWatcher   fsw   =   new   FileSystemWatcher();
  fsw.Path   =   @ "F:\Self\documents ";
  fsw.NotifyFilter   =   NotifyFilters.LastAccess   |   NotifyFilters.LastWrite   |   NotifyFilters.FileName   |   NotifyFilters.DirectoryName;
  fsw.Filter   =   "*.htm ";
  fsw.Changed   +=   new   FileSystemEventHandler(fsw_Changed);

  fsw.EnableRaisingEvents   =   true;


static   void   fsw_Changed(object   sender,   FileSystemEventArgs   e)
{
      Console.WriteLine( "文件 "   +   e.Name   +   "已改变 ");
}

为什么总是输出两次结果,而且当我选中F:\Self\documents下的某个htm文件时,他就算一次更新,这是不是vs的bug呀.还有如果我在判断cpu的利用率小于10%时在执行检测的话,出现更多.

[解决办法]
fsw.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName | NotifyFilters.DirectoryName;

你的modifier的 问题,如果修改的话,它既是一次lastaccess,也是一次lastwrite所以会修改两次
更具体的可以去网上查找,有人总结过
[解决办法]
up
[解决办法]
应该是ms的问题
[解决办法]
一个群的 帮你顶 -0-
[解决办法]
需要对触发的事件进行过滤

fsw.NotifyFilter = NotifyFilters.FileName | NotifyFilters.Attributes;
fsw.Changed += new FileSystemEventHandler(fsWatcher_Changed);

[解决办法]
http://topic.csdn.net/t/20061017/11/5087860.html,这个是在网上搜的,不知道对你有没有帮助

热点排行