Manipulation de fichiers
Fait partie de la section Logique & Flux du Journey C# de Coddy. Leçon 26 sur 66.
En C#, vous pouvez travailler avec des fichiers à l’aide des classes de l’espace de noms System.IO. Les deux principales classes pour les fichiers texte sont StreamReader (pour la lecture) et StreamWriter (pour l’écriture).
Écriture dans un fichier :
using System.IO;
// Créer un StreamWriter pour écrire dans un fichier
StreamWriter writer = new StreamWriter("myfile.txt");
// Écrire du texte dans le fichier
writer.WriteLine("Hello, World!");
writer.WriteLine("This is line 2");
// Fermer le fichier
writer.Close();Lecture depuis un fichier :
using System.IO;
// Créer un StreamReader pour lire un fichier
StreamReader reader = new StreamReader("myfile.txt");
// Lire tout le contenu du fichier
string content = reader.ReadToEnd();
Console.WriteLine(content);
// Fermer le fichier
reader.Close();Lecture ligne par ligne :
StreamReader reader = new StreamReader("myfile.txt");
// Lire la première ligne
string line1 = reader.ReadLine();
Console.WriteLine(line1);
// Lire la deuxième ligne
string line2 = reader.ReadLine();
Console.WriteLine(line2);
reader.Close();N'oublie pas de toujours fermer tes fichiers avec Close() quand tu as terminé !
Défi
FacileCréez une méthode nommée ReadFile qui :
- Prend un paramètre de type chaîne :
filename - Lit le contenu du fichier à l’aide de
StreamReader - Affiche le contenu dans la console
- Ferme le lecteur
Essayez vous-même
using System;
using System.IO;
class Program
{
public static void ReadFile(string filename)
{
// Écrivez votre code ici
}
static void Main(string[] args)
{
string filename = Console.ReadLine();
ReadFile(filename);
}
}Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Logique & Flux
1Tableaux multidimensionnels
Bases des tableaux 2DDéclaration et initialisation en 2DAccès aux éléments d'un tableau 2DBoucles imbriquées et tableaux 2DTableaux irréguliersOpérations matricielles courantesRécapitulatif - Multidimensionnel4Techniques de contrôle de flux
Retours anticipésClauses de gardeInstructions de saut (goto)Break et ContinueAplatir les conditionnelles imbriquées2Prise de décision avancée
Conditions multiplesLogique booléenne complexeComparaison If vs SwitchInstructions Switch imbriquéesRécapitulatif - Décisions avancées5Gestion des exceptions
Bases du Try-CatchTypes d'exceptionsBlocs Catch multiplesManipulation de fichiersLe bloc FinallyUsing vs Try-FinallyExceptions personnaliséesRécapitulatif - Gestion des erreurs3Améliorations des boucles
Performance des bouclesItération de structures complexesChaque type de boucleRefactorisation des bouclesRécapitulatif - Boucles optimisées6Gestion des valeurs nulles
Les bases des références nullesTypes valeur nullablesPatterns de vérification de nullitéProgrammation défensiveRécapitulatif - Null SafetyEntraînez-vous par vous-même : Compilateur C# en ligne