Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

Tutoriel C# Stream :StreamReader, StreamWriter avec exemple

Dans les opérations sur les fichiers C#, les flux sont normalement utilisés pour lire et écrire dans les fichiers. Un flux est une couche supplémentaire créée entre une application et un fichier. Le flux est utilisé pour garantir des opérations de lecture et d'écriture fluides dans le fichier.

Les flux sont normalement utilisés lors de la lecture de données à partir de fichiers volumineux. En utilisant des flux, les données des fichiers volumineux sont décomposées en petits morceaux et envoyées au flux. Ces blocs de données peuvent ensuite être lus à partir de l'application.

La raison de le décomposer en petits morceaux est l'impact sur les performances de la lecture d'un gros fichier en une seule fois. Si vous deviez lire les données d'un fichier de 100 Mo d'un seul coup, votre application pourrait se bloquer et devenir instable. La meilleure approche consiste alors à utiliser des flux pour décomposer le fichier en morceaux gérables.

Ainsi, lorsqu'une opération d'écriture est effectuée sur un fichier, les données à écrire sont d'abord écrites dans le flux. À partir du flux, les données sont ensuite écrites dans le fichier. Il en va de même pour l'opération de lecture. Lors de l'opération de lecture, les données sont d'abord transférées du fichier vers le flux. Les données sont ensuite lues à partir de l'application via le flux. Regardons un exemple de la façon dont nous pouvons lire et écrire en utilisant des flux.

Dans ce tutoriel, vous apprendrez-

Lecteur de flux

Le lecteur de flux est utilisé pour lire les données d'un fichier à l'aide de flux. Les données du fichier sont d'abord lues dans le flux. Ensuite, l'application lit les données du flux.

Pour notre exemple, nous supposerons que nous avons un fichier dans le lecteur D appelé Example.txt. Le fichier sera un simple fichier texte et aura 2 lignes comme indiqué ci-dessous

Pour notre exemple, nous allons créer une application console simple et travailler avec des flux de fichiers

Regardons un exemple de la façon dont nous pouvons utiliser des flux pour lire des données à partir d'un fichier. Entrez le code ci-dessous dans le fichier program.cs.

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
  class Tutorial
  {
   static void Main(string[] args)
   {
    String path = @"D:\Example.txt";

    using (StreamReader sr = File.OpenText(path))
    {
     String s = "";

     while ((s = sr.ReadLine()) != null)
     {
      Console.WriteLine(s);
     }
    }
   Console.ReadKey();
  }
 }
}

Explication du code :-

  1. Tout d'abord, nous déclarons un objet lecteur de flux. L'objet lecteur de flux est utilisé en C# pour définir un flux du fichier vers l'application. Les données seront poussées du fichier vers le flux chaque fois que les données sont lues à partir du fichier. Le File.OpenText est utilisé pour ouvrir le fichier "Example.txt" en mode lecture seule. Le gestionnaire du fichier est ensuite envoyé à l'objet lecteur de flux.
  2. Ensuite, nous définissons une variable temporaire "s" qui sera utilisée pour lire toutes les données du fichier.
  3. Nous utilisons ensuite la méthode de lecteur de flux ReadLine pour lire chaque ligne du tampon de flux. Lorsque nous effectuons cette opération, chaque ligne sera d'abord transférée du fichier vers le tampon. Ensuite, la ligne de chaîne sera transférée du tampon vers la variable 's'. Nous écrivons ensuite le contenu de la chaîne 's' dans la console.

Lorsque le code ci-dessus est défini et que le projet est exécuté à l'aide de Visual Studio, vous obtenez la sortie ci-dessous.

Sortie :-

À partir de la sortie, vous pouvez voir que le lecteur de flux a lu les deux lignes du fichier. Enfin, les lignes de la chaîne lues à partir du flux ont été envoyées à la console.

Écrivain de flux

L'enregistreur de flux est utilisé pour écrire des données dans un fichier à l'aide de flux. Les données de l'application sont d'abord écrites dans le flux. Après cela, le flux écrit les données dans le fichier. Regardons un exemple de la façon dont nous pouvons utiliser des flux pour écrire des données à partir d'un fichier. Entrez le code ci-dessous dans le fichier program.cs.

using System;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
  class Tutorial
  {
   static void Main(string[] args)
   {
    String path = @"D:\Example.txt";
    
    using (StreamWriter sr = File.AppendText(path))
    {
     sr.WriteLine("Guru99 - ASP.Net");
     sr.Close();

     Console.WriteLine(File.ReadAllText(path));
    }
    Console.ReadKey();
  }
 }
}

Explication du code :-

  1. Tout d'abord, nous déclarons un objet d'écriture de flux. L'objet stream writer est utilisé en C# pour définir un flux. Le flux est ensuite utilisé pour écrire des données de l'application dans le fichier. Les données seront poussées de l'application vers le flux chaque fois que des données doivent être écrites. La commande File.AppendText est utilisée pour ouvrir le fichier "Example.txt" en mode ajout. Le gestionnaire du fichier est ensuite envoyé à l'objet écrivain de flux.
  2. Nous utilisons la méthode d'écriture de flux Writeline pour écrire la ligne "Guru99 - ASP.Net" dans le flux. À partir du flux, la ligne sera ensuite écrite dans le fichier.
  3. Nous fermons ensuite l'éditeur de flux après avoir écrit dans le fichier. Il est généralement recommandé de fermer les gestionnaires de fichiers lorsque le fichier n'est plus nécessaire à des fins d'écriture.
  4. Enfin, nous lisons à nouveau le contenu du fichier et l'écrivons dans le journal de la console. Cela permet de vérifier si la ligne a été écrite dans le fichier.

Lorsque le code ci-dessus est défini et que le projet est exécuté à l'aide de Visual Studio, vous obtenez la sortie ci-dessous.

Sortie :-

À partir de la sortie, vous pouvez voir que la ligne "Guru99 - ASP.Net" a été ajoutée au fichier avec succès. Les 3 lignes de texte sont visibles dans la console.

Résumé


Langue C

  1. C++ For Loop avec EXAMPLE
  2. Instruction C++ Switch Case avec EXAMPLE
  3. Allocation dynamique C++ de tableaux avec exemple
  4. Entrée/Sortie de base C++ :Cout, Cin, Cerr Exemple
  5. Structure C++ avec exemple
  6. std ::list en C++ avec exemple
  7. Tutoriel de classe abstraite C # avec exemple :Qu'est-ce que l'abstraction ?
  8. Tutoriel sur les collections C # avec des exemples
  9. Java BufferedReader :comment lire un fichier en Java avec un exemple