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

Bagaimanakah Saya Boleh Memantau Perubahan Sistem Fail dalam C#?

Susan Sarandon
Susan Sarandonasal
2025-01-13 06:19:42867semak imbas

How Can I Monitor File System Changes in C#?

Gunakan FileSystemWatcher untuk memantau perubahan sistem fail dalam C#

Dalam C#, gunakan kelas FileSystemWatcher untuk menerima pemberitahuan dengan mudah apabila fail pada cakera diubah suai.

Kaedah pelaksanaan:

Kelas

FileSystemWatcher menyediakan mekanisme berasaskan peristiwa untuk memantau perubahan dalam sistem fail. Untuk menggunakan ciri ini, buat contoh FileSystemWatcher, tentukan laluan untuk memantau dan konfigurasikan penapis pemberitahuan yang diperlukan.

Contoh kod:

<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 += OnChanged;
    watcher.Created += OnCreated;
    watcher.Deleted += OnDeleted;
    watcher.Renamed += OnRenamed;

    // 启动监视器
    watcher.EnableRaisingEvents = true;
}</code>

Pengendali acara:

Kelas

FileSystemWatcher menyediakan pengendali acara khusus untuk setiap jenis perubahan sistem fail. Pengendali acara ini membolehkan anda menentukan tindakan yang perlu dilakukan apabila fail ditukar, dibuat, dipadamkan atau dinamakan semula.

Sebagai contoh, OnChanged pengendali acara boleh melakukan tindakan tertentu apabila fail diubah suai, seperti mengelog perubahan.

Contoh pengendalian acara:

<code class="language-csharp">private static void OnChanged(object source, FileSystemEventArgs e)
{
    Console.WriteLine("File: " + e.FullPath + " " + e.ChangeType);
}

private static void OnCreated(object source, FileSystemEventArgs e)
{
    Console.WriteLine("File Created: " + e.FullPath);
}

private static void OnDeleted(object source, FileSystemEventArgs e)
{
    Console.WriteLine("File Deleted: " + e.FullPath);
}

private static void OnRenamed(object source, RenamedEventArgs e)
{
    Console.WriteLine("File Renamed: " + e.OldFullPath + " to " + e.FullPath);
}</code>

Dengan menggunakan kelas FileSystemWatcher anda boleh memantau perubahan dalam sistem fail anda dengan berkesan dan mengambil tindakan yang sesuai berdasarkan perubahan yang dikesan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memantau Perubahan Sistem 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