一个用来监听指定目录下的文件系统类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));
}
}
}
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));
}
}
}
相关文章推荐
- 自己写的一个将指定目录下的文本文件集合成单独的一个大文本文件工具
- 将一个文件另存到一个指定的目录下
- 黑马程序员-列出一个目录中所有指定文件,使用FilenameFilter类
- 分享一个基于FileSystemWatcher的文件自动备份程序
- 将上传文件保存到指定目录的一个java源代码
- linux中删除一个目录下的所有文件,但保留一个指定文件
- python - 自定义一个递归函数用于递归遍历指定目录下的所有文件
- [Linux目录文件]在Linux中删除一个指定目录
- symbian s60 将一个带有目录的zip文件解压到指定目录
- Linux-删除一个目录下的所有文件,但保留一个指定文件
- 指定目录下的java文件存储到一个Txt文本文件中
- 在Asp.net中如何遍历一个本地目录下的所有文件并上载到Web 服务器上指定的目录中
- 删除一个目录下的所有文件,但保留一个指定文件
- PHP - Manual手册 - XL. Filesystem 文件系统函数 - is_dir判断给定文件名是否是一个目录
- 遍历一个指定的目录(包含子目录和文件),用Jdom把该目录的树形结构写入xml文件中
- 做了一个浏览指定文件格式的 TreeView(方便查看Source目录下的源码)
- gulp监听文件变化,并拷贝到指定目录(转)---参考记录
- 读取指定目录下的所有文件生成一个excel
- 编写一个SHELL脚本,可以获得指定目录下的所有文件及文件夹的大小。输出的样式与 ls -lh 命令相同。
- 拷贝一个目录或者文件到指定路径下