Vous devez gérer des données persistantes dans votre application C#.
Sans la persistance des données, les informations disparaissent à la fermeture du programme, rendant la gestion des données inefficace.
En utilisant System.IO, cet article explique comment lire et écrire dans des fichiers texte pour assurer une conservation durable des données.
Démarrez votre voyage en programmation C# et devenez un expert en un rien de temps.
Lire et écrire fichier texte en C#
Dans ce chapitre, nous allons explorer la persistance des données , qui fait référence à la capacité de conserver des informations même après la fermeture du programme. Contrairement à une variable, qui perd sa valeur à la fermeture du programme, la persistance permet de stocker des données de manière durable sur un support de stockage, comme un fichier texte. Cela permet de rouvrir et d’exploiter ces données plus tard.
L’objectif ici est d’illustrer comment écrire et lire dans un fichier texte. Nous allons utiliser la classe File du namespace System.IO, qui facilite l’interaction avec les fichiers.
Utiliser System.IO pour la persistance des données
Méthodes pour écrire fichier texte C#
Importation du Namespace System.IO
Le premier pas consiste à importer le namespace System.IO qui permet d’accéder aux fonctionnalités d’entrée/sortie (entrée de données via le clavier, sortie vers un fichier, etc.).
using System.IO;
Définir le chemin du fichier
Créez une chaîne de caractères pour spécifier le chemin du fichier où les données seront stockées. Notez que les chemins de fichier doivent être correctement formatés avec des doubles barres obliques inversées (\\) au lieu de simples barres (\), car ce dernier est un caractère d’échappement en C#.
string filePath = @"C:\\Utilisateur\\IGA\\Bureau\\fichier.txt";
Écrire du texte dans le fichier Utilisez la méthode WriteAllText pour écrire du texte dans un fichier. Si le fichier existe déjà, il sera écrasé.
string content = "Le C# est formidable!";
File.WriteAllText(filePath, content);
Ajouter du texte sans écraser le contenu existant Pour ajouter du texte sans effacer le contenu précédent, utilisez la méthode AppendAllText :
File.AppendAllText(filePath, "\nC'est génial!");
Le \n insère une nouvelle ligne avant le texte ajouté.
Résultat :
Techniques pour lire fichier texte C#
Lire tout le contenu du fichier
Utilisez la méthode ReadAllText pour lire l’intégralité du fichier.
string fileContent = File.ReadAllText(filePath);
Console.WriteLine(fileContent);
Resultats :
Lire ligne par ligne
Parfois, il est nécessaire de lire un fichier ligne par ligne. Pour cela, utilisez la classe StreamReader :
using (StreamReader reader = new StreamReader(filePath))
{
string line;
while ((line = reader.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
Le StreamReader est plus flexible, surtout pour des fichiers volumineux, car il permet de lire le fichier ligne par ligne sans charger tout son contenu en mémoire.
Résultat :
Conclusion sur la gestion des fichiers C#
L’utilisation de File (avec WriteAllText, AppendAllText et ReadAllText) est très simple et peut être pratique pour de petites tâches. Cependant, pour des scénarios plus complexes ou pour manipuler de grands fichiers, il est recommandé d’utiliser StreamWriter et StreamReader. Ces classes offrent un contrôle plus précis sur l’écriture et la lecture des fichiers.
Conseils pratiques pour la gestion des fichiers
5. Conseils pratiques :
- Toujours vérifier que le fichier existe avant de tenter de le lire.
- Utiliser des exceptions pour gérer les erreurs lors de la lecture ou de l’écriture dans des fichiers.
Cela vous permet de rendre votre application plus robuste et fonctionnelle en intégrant la persistance des données.
Formez-vous gratuitement avec Alphorm !
Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.
FAQ
Comment conserver les données après la fermeture d'un programme C#?
Comment écrire dans un fichier texte en C# sans écraser le contenu existant?
Quelles sont les méthodes efficaces pour lire un fichier texte en C#?
Pourquoi utiliser StreamReader au lieu de ReadAllText pour de grands fichiers?
Quels sont les conseils pratiques pour gérer les fichiers en C#?
Conclusion
En maîtrisant la lecture et l’écriture de fichiers texte en C#, vous ouvrez la voie à une gestion avancée de la persistance des données. Quels autres aspects de la gestion de fichiers en C# aimeriez-vous explorer?