Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Mengakses Fail yang Digunakan oleh Proses Lain dalam .NET?

Bagaimanakah Saya Boleh Mengakses Fail yang Digunakan oleh Proses Lain dalam .NET?

Linda Hamilton
Linda Hamiltonasal
2025-01-16 15:33:16127semak imbas

How Can I Access Files Used by Other Processes in .NET?

Mengakses Fail Sedang Digunakan oleh Aplikasi Lain dalam .NET

Pembangun .NET kerap menghadapi ralat "akses ditolak" apabila cuba mengakses fail yang telah dibuka oleh proses lain. Ini amat menyusahkan apabila fail adalah penting untuk pemindahan data atau analisis.

Penyelesaian biasa melibatkan penggunaan keupayaan perkongsian fail. Penghitungan .NET System.IO.FileShare menawarkan pelbagai pilihan untuk menguruskan perkongsian fail. Menggunakan FileShare.ReadWrite membolehkan akses baca dan tulis, membolehkan berbilang proses berinteraksi dengan fail secara serentak.

Ini contohnya:

<code class="language-csharp">using System;
using System.IO;

class Program
{
    static void Main()
    {
        try
        {
            // Utilize FileShare.ReadWrite for concurrent access
            FileStream logFileStream = new FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite);
            StreamReader logFileReader = new StreamReader(logFileStream);

            // Process file content line by line
            string line;
            while ((line = logFileReader.ReadLine()) != null)
            {
                // Your processing logic here
            }

            logFileReader.Close();
            logFileStream.Close();
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}</code>

Kaedah ini mencipta kunci fail bukan eksklusif, membenarkan berbilang atur cara mengakses fail secara serentak. Yang penting, ingat untuk menutup kedua-dua objek StreamReader dan FileStream untuk memastikan pengurusan sumber yang cekap selepas pemprosesan fail selesai.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Fail yang Digunakan oleh Proses Lain dalam .NET?. 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