使用FileSystemWatcher监视指定目录

    使用 FileSystemWatcher 监视指定目录中的更改。可监视指定目录中的文件或子目录的更改。

    以下是一个简单的实例,用来监控指定目录下文件的新增、删除、重命名等情况(文件内容更改会触发多次,还未想到更好的办法)。

 

 1 class Program
 2 {
 3     static void Main(string[] args)
 4     {
 5         FileSystemWatcher w = new FileSystemWatcher(@"C:\test"); //给定监控目录,实例化监控类
 6         w.NotifyFilter = NotifyFilters.FileName | NotifyFilters.DirectoryName;  //监控类型为目录名、文件名
 7         w.Filter = "*.*";  
 8         w.IncludeSubdirectories = true;   //监控子目录
 9         w.Created += new FileSystemEventHandler(OnCreated);  //新增文件时触发事件
10         w.Deleted += new FileSystemEventHandler(OnDeleted);  //删除文件时触发事件
11         w.Renamed += new RenamedEventHandler(OnRenamed);  //删除文件时触发事件
12         w.EnableRaisingEvents = true;   //启用监控
13         Console.WriteLine(@"监控已启动,监控目录是C:\test");
14         Console.ReadKey();
15     }
16 
17     private static void OnRenamed(object sender, FileSystemEventArgs e)
18     {
19         Console.WriteLine(DateTime.Now.ToString() + "\t重命名了【" + e.Name+"");
20     }
21 
22     private static void OnDeleted(object sender, FileSystemEventArgs e)
23     {
24         Console.WriteLine(DateTime.Now.ToString() + "\t删除了【" + e.Name + "");
25     }
26 
27     private static void OnCreated(object sender, FileSystemEventArgs e)
28     {
29         Console.WriteLine(DateTime.Now.ToString() + "\t新建了【" + e.Name + "");
30     }
31 }

 


 

posted @ 2017-09-16 22:52  九肥狼  阅读(703)  评论(0)    收藏  举报