Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Memantau Perubahan Fail dalam C#?

Bagaimanakah Saya Boleh Memantau Perubahan Fail dalam C#?

Linda Hamilton
Linda Hamiltonasal
2025-01-13 09:56:12251semak imbas

How Can I Monitor File Changes in C#?

Pantau perubahan fail dalam C#

Masalah: Mencari mekanisme untuk mengesan pengubahsuaian fail pada cakera.

Jawapan: Kelas FileSystemWatcher menyediakan penyelesaian yang boleh dipercayai.

Arahan:

FileSystemWatcher Kelas memantau perubahan fail dalam direktori yang ditentukan. Apabila perubahan berlaku, ia menimbulkan peristiwa yang boleh diproses untuk melaksanakan tindakan yang diingini. Kod berikut menunjukkan cara menggunakan 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>

Dalam contoh ini, monitor dikonfigurasikan untuk memantau perubahan pada fail teks (*.txt) dalam laluan tertentu. Apabila fail dalam laluan itu ditukar, dibuat, dipadamkan atau dinamakan semula, pengendali acara yang sepadan dipanggil, membolehkan anda mengambil tindakan sewajarnya, seperti mengelog acara atau mengemas kini keadaan aplikasi anda.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memantau Perubahan Fail dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn