C#怎么及时监控到其它程序占用的txt文件被改变
时间: 2023-11-27 19:51:04 浏览: 40
你可以使用C#的FileSystemWatcher类来监控文件系统中的更改。FileSystemWatcher类可以监视指定的目录,文件或文件夹,并通知你当有任何更改发生时。
以下是一个简单的示例代码,可以监控指定目录下的所有.txt文件的变化:
```csharp
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
// 监控的目录
string path = @"C:\MyFolder";
// 创建一个新的 FileSystemWatcher 对象
FileSystemWatcher watcher = new FileSystemWatcher();
// 监视的路径
watcher.Path = path;
// 监视的文件类型
watcher.Filter = "*.txt";
// 监视文件的更改类型
watcher.NotifyFilter = NotifyFilters.LastWrite;
// 添加事件处理程序
watcher.Changed += new FileSystemEventHandler(OnChanged);
// 开始监视
watcher.EnableRaisingEvents = true;
// 等待控制台退出
Console.WriteLine("Press 'q' to quit the sample.");
while (Console.Read() != 'q') ;
}
// 文件更改时触发的事件处理程序
private static void OnChanged(object source, FileSystemEventArgs e)
{
Console.WriteLine("File {0} has been changed.", e.Name);
}
}
```
在这个示例中,当指定目录下的任何.txt文件被更改时,OnChanged事件处理程序将被触发并显示相应的消息。你可以根据需要进行更改。