c# watcher怎样监控文件变化

avatar
作者
猴君
阅读量:0

在C#中,可以使用FileSystemWatcher类来监控文件的变化。以下是一个简单的示例,演示了如何使用FileSystemWatcher来监控一个文件夹中的文件变化:

using System; using System.IO;  namespace FileSystemWatcherExample {     class Program     {         static void Main(string[] args)         {             // 创建一个新的 FileSystemWatcher 实例             using (FileSystemWatcher watcher = new FileSystemWatcher())             {                 // 设置要监控的文件夹路径                 watcher.Path = @"C:\example_folder\";                  // 设置要监控的事件类型                 watcher.NotifyFilter = NotifyFilters.LastAccess                     | NotifyFilters.LastWrite                     | NotifyFilters.FileName                     | NotifyFilters.DirectoryName;                  // 注册事件处理程序                 watcher.Changed += new FileSystemEventHandler(OnChanged);                 watcher.Created += new FileSystemEventHandler(OnChanged);                 watcher.Deleted += new FileSystemEventHandler(OnChanged);                 watcher.Renamed += new RenamedEventHandler(OnRenamed);                  // 开始监控文件夹                 watcher.EnableRaisingEvents = true;                  Console.WriteLine("开始监控文件夹:" + watcher.Path);                 Console.WriteLine("按任意键退出...");                 Console.ReadKey();             }         }          // 当文件或文件夹发生更改时触发的事件处理程序         static void OnChanged(object source, FileSystemEventArgs e)         {             Console.WriteLine($"文件或文件夹已更改:{e.FullPath}");         }          // 当文件或文件夹被重命名时触发的事件处理程序         static void OnRenamed(object source, RenamedEventArgs e)         {             Console.WriteLine($"文件或文件夹已重命名:{e.OldFullPath} -> {e.FullPath}");         }     } } 

在这个示例中,我们创建了一个FileSystemWatcher实例,并设置了要监控的文件夹路径。然后,我们设置了要监控的事件类型(最后访问、最后写入、文件名和目录名),并为这些事件注册了事件处理程序。最后,我们调用EnableRaisingEvents方法开始监控文件夹。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!