首页 > 后端开发 > C++ > 如何在 C# 中监控文件更改?

如何在 C# 中监控文件更改?

Linda Hamilton
发布: 2025-01-13 09:56:12
原创
292 人浏览过

How Can I Monitor File Changes in C#?

在C#中监控文件更改

问题: 寻找一种机制来检测磁盘上的文件修改。

答案: FileSystemWatcher 类提供了一个可靠的解决方案。

说明:

FileSystemWatcher 类监控指定目录中的文件更改。当发生更改时,它会引发可以处理以执行所需操作的事件。以下代码演示了如何使用 FileSystemWatcher

<code class="language-csharp">public void CreateFileWatcher(string path)
{
    // 创建 FileSystemWatcher 实例并配置其属性
    FileSystemWatcher watcher = new FileSystemWatcher();
    watcher.Path = path;
    watcher.NotifyFilter = NotifyFilters.LastAccess | NotifyFilters.LastWrite
       | NotifyFilters.FileName | NotifyFilters.DirectoryName;
    watcher.Filter = "*.txt";

    // 添加事件处理程序
    watcher.Changed += new FileSystemEventHandler(OnChanged);
    watcher.Created += new FileSystemEventHandler(OnChanged);
    watcher.Deleted += new FileSystemEventHandler(OnChanged);
    watcher.Renamed += new RenamedEventHandler(OnRenamed);

    // 开始监控
    watcher.EnableRaisingEvents = true;
}

private static void OnChanged(object source, FileSystemEventArgs e)
{
    // 定义在更改、创建或删除文件时要执行的操作
    Console.WriteLine("文件: " + e.FullPath + " " + e.ChangeType);
}

private static void OnRenamed(object source, RenamedEventArgs e)
{
    // 定义在文件重命名时要执行的操作
    Console.WriteLine("文件: {0} 重命名为 {1}", e.OldFullPath, e.FullPath);
}</code>
登录后复制

在此示例中,监视器配置为监控特定路径中文本文件(*.txt)的更改。当该路径内的文件发生更改、创建、删除或重命名时,将调用相应的事件处理程序,允许您相应地采取措施,例如记录事件或更新应用程序的状态。

以上是如何在 C# 中监控文件更改?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板