利用windows系統自帶的API檢測檔案的修改/刪除/新建/重新命名
阿新 • • 發佈:2020-12-26
這個介面是比較好用的,不需要第三方的dll,只需要system.IO引入了就可以使用了
修改/刪除/新建/重新命名這幾種對檔案的操作都能夠被監測到
using System; using System.Collections.Generic; using System.Text; using System.IO; using System.Configuration; namespace ReadExcel.Common { class FileWatcher { public void Watcher() { FileSystemWatcher watcher= new FileSystemWatcher(); watcher.Path = ConfigurationManager.AppSetting("Detach"); watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName| NotifyFilters.DirectoryName; watcher.Filter = "*"; // Add event handlers. watcher.Changed += new FileSystemEventHandler(this.OnChanged); watcher.Created += new FileSystemEventHandler(this.OnChanged); watcher.Deleted += new FileSystemEventHandler(this.OnChanged); watcher.Renamed += new RenamedEventHandler(this.OnRenamed); // Begin watching. watcher.EnableRaisingEvents = true; } private void OnChanged(object source, FileSystemEventArgs e) => Console.WriteLine($"File: {e.FullPath} {e.ChangeType}"); private void OnRenamed(object source, RenamedEventArgs e) => Console.WriteLine($"File: {e.OldFullPath} renamed to {e.FullPath}"); } }