Maison >développement back-end >C++ >Comment puis-je accéder à un fichier utilisé par un autre processus en VB.NET et C# ?

Comment puis-je accéder à un fichier utilisé par un autre processus en VB.NET et C# ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2025-01-16 15:45:14458parcourir

How Can I Access a File in Use by Another Process in VB.NET and C#?

Travailler avec des fichiers accessibles par d'autres applications

Tenter d'accéder à un fichier en cours d'écriture par une autre application entraîne souvent une erreur « accès refusé ». Ce guide présente une solution utilisant VB.NET et C# pour gérer cette situation.

VB.NET et C# proposent tous deux des méthodes pour ouvrir des fichiers avec un accès partagé. En employant FileShare.ReadWrite, plusieurs programmes peuvent accéder simultanément au même fichier.

Voici comment mettre en œuvre cela :

Exemple VB.NET :

<code class="language-vb.net">Using logFileStream = New FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite)
    Using logFileReader = New StreamReader(logFileStream)
        While Not logFileReader.EndOfStream
            Dim line As String = logFileReader.ReadLine()
            ' Process each line of the file here
        End While
    End Using
End Using</code>

Exemple C# :

<code class="language-csharp">// Open the file with shared read/write access
using (FileStream logFileStream = new FileStream("c:\test.txt", FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
using (StreamReader logFileReader = new StreamReader(logFileStream))
{
    // Read and process the file
    while (!logFileReader.EndOfStream)
    {
        string line = logFileReader.ReadLine();
        // Process each line of the file here
    }
}</code>

L'instruction using (ou le bloc try-finally) est cruciale pour garantir un nettoyage correct des ressources et la libération du descripteur de fichier. Cela évite les conflits potentiels et garantit une gestion efficace des ressources.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn