您的位置:首页 > 其它

一个用来监听指定目录下的文件系统类FileSystemWatcher

2008-11-10 10:06 323 查看
使用FileSystemWatcher监视指定目录中的更改。我们可以监视指定目录下的文件或子目录的创建、删除、重命名。可以创建一个组件来监视本地计算机、网络驱动器或远程计算机上的文件。

using System;

using System.IO;

namespace FileWatcherTest

{

class Program

{

static void Main(string[] args)

{

// Create watcher instance to watch "D:/"

FileSystemWatcher fileWatcher = new FileSystemWatcher(@"D:/", "*.*");

// Only watch doc files

// fileWatcher.Filter = "*.doc";

// Set watcher filter type

fileWatcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite | NotifyFilters.FileName | NotifyFilters.DirectoryName;

fileWatcher.EnableRaisingEvents = true;

fileWatcher.IncludeSubdirectories = true;

// Add event handlers

fileWatcher.Changed += new FileSystemEventHandler(fileWatcher_Changed);

fileWatcher.Created += new FileSystemEventHandler(fileWatcher_Created);

fileWatcher.Renamed += new RenamedEventHandler(fileWatcher_Renamed);

fileWatcher.Deleted += new FileSystemEventHandler(fileWatcher_Deleted);

Console.ReadLine();

}

private static void fileWatcher_Changed(object sender, FileSystemEventArgs e)

{

// Specify what is done when a file is changed, created, or deleted

Console.WriteLine(string.Format("File: {0} {1}", e.FullPath, e.ChangeType));

}

private static void fileWatcher_Created(object sender, FileSystemEventArgs e)

{

// Specify what is done when a file is created

Console.WriteLine(string.Format("File: [{0}] is created", e.FullPath));

}

private static void fileWatcher_Renamed(object sender, System.IO.RenamedEventArgs e)

{

// Specify what is done when a file is renamed

Console.WriteLine(string.Format("File: [{0}] is renamed to [{1}]", e.OldFullPath, e.FullPath));

}

private static void fileWatcher_Deleted(object sender, System.IO.FileSystemEventArgs e)

{

// Specify what is done when a file is deleted

Console.WriteLine(string.Format("File: [{0}] is deleted", e.FullPath));

}

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐