Gestion des fichiers en C# : opérations d'E/S [Exemples]

C# propose un large éventail d’opérations sur les fichiers. Ces opérations incluent l'ouverture d'un fichier, la lecture ou l'écriture dans un fichier. Il peut y avoir des cas dans lesquels vous souhaitez travailler directement avec des fichiers, auquel cas vous utiliserez les opérations sur les fichiers disponibles en C#. Certaines des opérations de base sur les fichiers sont mentionnées ci-dessous.

  1. Lecture – Cette opération est l'opération de lecture de base dans laquelle les données sont lues à partir d'un fichier.
  2. Écriture – Cette opération est l'opération d'écriture de base dans laquelle les données sont écrites dans un fichier. Par défaut, tout le contenu existant est supprimé du fichier et le nouveau contenu est écrit.
  3. Ajout – Cette opération implique également l’écriture d’informations dans un fichier. La seule différence est que les données existantes dans un fichier ne sont pas écrasées. Les nouvelles données à écrire sont ajoutées à la fin du fichier.

Commandes d'E/S de base

C# et .Net peuvent travailler avec des fichiers à l'aide de plusieurs commandes File I/O. Jetons un coup d'œil à certaines de ces commandes. Pour notre exemple, nous supposerons que nous avons un fichier dans le lecteur D appelé Exemple.txt.
Le fichier sera un simple fichier texte et comportera 2 lignes comme indiqué ci-dessous

  • Guru99 – .Net
  • Guru99 -C#

Pour notre exemple, nous allons créer une application console simple et travailler avec nos commandes File I/O. L'application console est celle de base créée dans le didacticiel précédent. Dans l'application console, tout le code est écrit dans le fichier program.cs.

Le fichier existe

La méthode Fichier existe est utilisée pour vérifier si un fichier particulier existe. Voyons maintenant le code qui peut être utilisé pour vérifier si notre fichier Exemple.txt existe ou non. Entrez le code ci-dessous dans le fichier program.cs.

Le fichier existe

using System;
using System.Collections.Generic;
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";
   
   if (File.Exists(path))
   {
    Console.WriteLine("File Exists");
   }
   Console.ReadKey();
  }
 }
}

Explication du code : -

  1. Tout d’abord, nous définissons une variable chaîne avec le chemin d’accès à notre fichier Exemple.txt.
  2. Ensuite, nous utilisons la méthode File.Exists pour vérifier si le fichier existe ou non. Si le fichier existe, une valeur vraie sera renvoyée.
  3. Si nous obtenons une vraie valeur et que le fichier existe, alors nous écrivons le message « Le fichier existe » sur la console.

Lorsque le code ci-dessus est défini et que le projet est exécuté en utilisant Visual Studio, vous obtiendrez le résultat ci-dessous.

Production:-

Le fichier existe

À partir du résultat ci-dessus, vous pouvez voir que la commande File.Exists a été exécutée avec succès et que le message correct a été affiché dans la fenêtre de la console.

Fichier.ReadAlllines

La méthode permet de lire toutes les lignes une par une dans un fichier. Les lignes sont ensuite stockées dans une variable de tableau de chaînes. Regardons un exemple. Entrez le code ci-dessous dans le fichier program.cs.

Fichier.ReadAlllines

using System;
using System.Collections.Generic;
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";

   String[] lines;
   lines = File.ReadAllLines(path);

   Console.WriteLine(lines[0]);
   Console.WriteLine(lines[1]);

   Console.ReadKey();
  }
 }
}

Explication du code : -

  1. Tout d’abord, nous déclarons une variable de tableau de chaînes. Celui-ci sera utilisé pour stocker le résultat qui sera renvoyé par la méthode File.ReadAllLines.
  2. Ensuite, nous utilisons la méthode File.ReadAllLines pour lire toutes les lignes de notre fichier texte. Le résultat est ensuite transmis à la variable lignes.
  3. Puisque nous savons que notre fichier ne contient que 2 lignes, nous pouvons accéder à la valeur des variables du tableau via la commande lignes[0] et lignes[1].

Lorsque le code ci-dessus est défini et que le projet est exécuté en utilisant Visual Studio, vous obtiendrez le résultat ci-dessous.

Production:-

Fichier.ReadAlllines

À partir du résultat, vous pouvez voir que la commande File.ReadAllLines a renvoyé les deux lignes de notre fichier Exemple.txt

Fichier.ReadAllText

Cette méthode permet de lire toutes les lignes d'un fichier en même temps. Les lignes sont ensuite stockées dans une variable chaîne. Regardons un exemple. Entrez le code ci-dessous dans le fichier program.cs.

Fichier.ReadAllText

using System;
using System.Collections.Generic;
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";

    String lines;
    lines = File.ReadAllText(path);
    Console.WriteLine(lines);
 
    Console.ReadKey();
   }
  }
}

Explication du code : -

  1. Tout d’abord, nous déclarons une variable chaîne appelée Lines. Celui-ci sera utilisé pour stocker le résultat qui sera renvoyé par la méthode File.ReadAllText.
  2. Ensuite, nous utilisons la méthode File.ReadAllText pour lire toutes les lignes de notre fichier texte. Le résultat est ensuite transmis à la variable lignes.
  3. On peut directement utiliser la méthode Console.Writeline pour afficher la valeur de la variable Lines.

Lorsque le code ci-dessus est défini et que le projet est exécuté en utilisant Visual Studio, vous obtiendrez le résultat ci-dessous.

Production:-

Fichier.ReadAllText

À partir du résultat, vous pouvez voir que la commande File.ReadAlltext a renvoyé les deux lignes de notre fichier Exemple.txt

Fichier.Copier

La méthode est utilisée pour faire une copie d'un fichier existant. Regardons un exemple. Entrez le code ci-dessous dans le fichier program.cs.

Fichier.Copier

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";

   String copypath = @"D:\ExampleNew.txt";

   File.Copy(path,copypath);

   Console.ReadKey();
   }
  }
}

Explication du code : -

  1. Tout d’abord, nous déclarons une variable chaîne appelée chemin. Ce sera l'emplacement de notre fichier Exemple.txt. Ce fichier sera le fichier source utilisé pour l'opération de copie.
  2. Ensuite, nous déclarons une variable chaîne appelée copypath. Ce sera l'emplacement d'un nouveau fichier appelé fichier SampleNew.txt. Ce sera le fichier de destination dans lequel le contenu sera écrit à partir du fichier source Exemple.txt.
  3. Nous appelons ensuite la méthode File.Copy pour copier le fichier Exemple.txt dans le fichier ExempleNew.txt.

Lorsque le code ci-dessus est défini et que le projet est exécuté en utilisant Visual Studio, le fichier Exemple.txt sera copié dans ExempleNew.txt.

Fichier.Supprimer

La méthode est utilisée pour supprimer un fichier existant. Regardons un exemple. Entrez le code ci-dessous dans le fichier program.cs.

Fichier.Supprimer

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";

   File.Delete(path);

   Console.ReadKey();
   }
  }
}

Explication du code : -

  1. Tout d’abord, nous déclarons une variable chaîne appelée chemin. Ce sera l'emplacement de notre fichier Exemple.txt. C'est le fichier qui sera supprimé.
  2. Ensuite, nous appelons la méthode File.Delete pour supprimer le fichier.

Lorsque le code ci-dessus est défini et que le projet est exécuté en utilisant Visual Studio, le fichier Exemple.txt sera supprimé du lecteur D.

Résumé

  • C# propose un certain nombre d'opérations sur les fichiers qui peuvent être effectuées sur des fichiers. La plupart de ces opérations font partie de la classe File.
  • Si vous souhaitez lire les données d'un fichier, vous pouvez utiliser les méthodes File.ReadAlltext ou File.ReadAllLines.
Méthode de fichier Description
Le fichier existe La méthode Le fichier existe est utilisée pour vérifier si un fichier particulier existe.
Fichier.ReadAlllines La méthode permet de lire toutes les lignes une par une dans un fichier.
Fichier.ReadAllText Cette méthode permet de lire toutes les lignes d'un fichier en même temps.
Fichier.Copier La méthode est utilisée pour faire une copie d'un fichier existant.
Fichier.Supprimer La méthode est utilisée pour supprimer un fichier existant.