Maison >développement back-end >C++ >Comment puis-je lire et écrire simultanément dans le même fichier en C# ?

Comment puis-je lire et écrire simultanément dans le même fichier en C# ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-06 06:43:42348parcourir

How Can I Read and Write to the Same File Simultaneously in C#?

Lecture et écriture simultanées de fichiers en C#

Lorsque vous travaillez avec des fichiers en C#, vous pouvez rencontrer des scénarios dans lesquels vous devez effectuer à la fois la lecture et opérations d'écriture sur le même fichier. Cependant, la simple création d'instances StreamReader et StreamWriter distinctes comme dans le code suivant ne suffira pas :

static void Main(string[] args)
{
    StreamReader sr = new StreamReader(@"C:\words.txt");
    StreamWriter sw = new StreamWriter(@"C:\words.txt");
}

Pour réaliser à la fois des opérations de lecture et d'écriture sur un fichier, vous devez utiliser un seul flux prenant en charge les deux modes d'accès. . Voici comment procéder :

FileStream fileStream = new FileStream(
      @"c:\words.txt", FileMode.OpenOrCreate, 
      FileAccess.ReadWrite, FileShare.None);

Le constructeur FileStream est initialisé avec les paramètres suivants :

  • FilePath : Le chemin d'accès au fichier à accessible.
  • FileMode : Spécifie comment le fichier est ouvert ou créé. Dans ce cas, FileMode.OpenOrCreate est utilisé, qui ouvre le fichier s'il existe ou le crée s'il n'existe pas.
  • FileAccess : Spécifie le mode d'accès au fichier. FileAccess.ReadWrite permet à la fois la lecture et l'écriture.
  • FileShare : Indique comment le fichier peut être partagé avec d'autres processus. FileShare.None signifie que le fichier ne peut pas être partagé.

Une fois que vous avez créé l'instance FileStream, vous pouvez l'utiliser pour effectuer des opérations de lecture et d'écriture sur le fichier.

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