Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Membaca Fail yang Dikunci oleh Proses Lain dalam C#?

Bagaimanakah Saya Boleh Membaca Fail yang Dikunci oleh Proses Lain dalam C#?

Barbara Streisand
Barbara Streisandasal
2025-01-16 15:43:09545semak imbas

How Can I Read a File Locked by Another Process in C#?

Gunakan FileShare.ReadWrite untuk membaca fail yang dikunci

Banyak aplikasi menghadapi situasi di mana mereka perlu membaca fail yang sedang diubah suai oleh proses lain. Dalam kes ini, membuka fail menggunakan kaedah tradisional selalunya menghasilkan pengecualian "digunakan oleh proses lain". Untuk mengatasi had ini, pertimbangkan untuk menggunakan parameter FileShare.ReadWrite apabila membuka fail. Parameter ini memberikan akses baca dan tulis kepada fail, membenarkan proses lain untuk terus menulis semasa program anda membaca kandungannya.

Berikut ialah contoh yang menunjukkan kaedah ini dalam C#:

<code class="language-csharp">FileStream logFileStream = new FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
StreamReader logFileReader = new StreamReader(logFileStream);

while (!logFileReader.EndOfStream)
{
    string line = logFileReader.ReadLine();
    // 您的代码在此处
}

// 清理
logFileReader.Close();
logFileStream.Close();</code>

Dengan menggunakan FileShare.ReadWrite, atur cara anda boleh mewujudkan sambungan baca sahaja ke fail sambil membenarkan proses lain mengubah suai fail secara serentak. Kaedah ini menyediakan penyelesaian yang mudah untuk aplikasi yang perlu mengakses fail yang kerap dikemas kini.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Fail yang Dikunci oleh Proses Lain 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