Recherche
 
 
 
Tutoriaux
 
- Initiation à VS .NET
- Agencement des composants
- Menu déroulant
- Pop-up
- Traitement des fichiers
- Les Délégués
- Les Threads
- Fichiers XML
- Flux Web
- Services Web
 
 
Projets
 
- Calpe's World
- Sarky
- CyberAbuse
 
 
Me conctacter
 
- Demande d'aide
- Me proposer un poste
 
 
Liens
 
- Developpez.com
- C# Help
- Cours C# de l'ESSI
 
 
Traitement des fichiers

En général on trouve facilement de l'aide sur internet à propos du traitement des fichiers quelque soit le langage mais on ne trouve jamais directement les bonnes fonctions, ou méthodes utiles dans notre cas.
Ainsi je vais essayer de traiter certains cas classiques.

Généralités

Lors d'un traitement sur les fichiers il faut include dans le projet une bibliothèque ou "namespace".
Pour ceci il suffit d'ajouter tout en haut du fichier concerné:
using System.IO;

Lire un fichier texte entier

          private void Form1_Load(object sender, System.EventArgs e)
          {
               TextReader reader;
               string fileName = "monfichier.txt";
               reader = new StreamReader(fileName);
               string result = reader.ReadToEnd();
               MessageBox.Show(result);
               reader.Close();
          }

En cliquant deux fois sur la fenêtre on se retrouve sous la méthode Form1_Load appelée au lancement de la fenêtre.
On commence par délclarer un TextReader du nom de reader.
O on donne le nom du fichier monfichier.txt.
Oon associe notre objet reader au fichier.
Puis on lui applique la méthode ReadToEnd afin d'afficher tout le texte dans une pop-up avec MessageShow.
Le fichier monfichier.txt doit se situer sous <emplacement> \ <nom> \ bin \ Debug.

Lire un fichier texte ligne par ligne

          private void Form1_Load(object sender, System.EventArgs e)
          {
               TextReader reader;
               string fileName = "monfichier.txt";
               reader = new StreamReader(fileName);
               string line;
               while (true)
               {
                     // lecture de la ligne
                    line=reader.ReadLine();
                     // si la ligne est vide on arrête
                    if (line==null)
                         break;
                     // on affiche la ligne
                    MessageBox.Show(line);
               }
               reader.Close();
          }

On commence comme la dernière fois,
On crée avec le while une boucle infinie arrêtée seulement si la ligne est null (ligne 11 et 12).
On lit a chaque itération la ligne suivante grâce à la méthode ReadLine.
On affiche ligne par ligne dans un pop-up avec MessageBox.

Ecrire dans un fichier texte

          private void Form1_Load(object sender, System.EventArgs e)
          {
               TextWriter writer;
               string fileName = "monfichier.txt";
               writer = new StreamWriter(fileName);
               
               writer.Write("Le petit\r\nchat de\r\nbeatrice");
               writer.Close();     
          }

C'est le même principe que précédemment, on commence par instancier un TextWriter en writer.
On lui affecte le fichier voulu puis grâce à la méthode Write, on écrit dans le fichier ce qu'on veut.

Ajouter dans un fichier texte
          private void Form1_Load(object sender, System.EventArgs e)                               
          {
               TextWriter writer;                
               string fileName = "monfichier.txt";
               writer =File.AppendText(fileName);               
               writer.Write("\r\nJ'ai envie\r\nd'ajouter du texte");               
               writer.Close();
          }

Ce code permet d'ajouter la ligne J'ai envie et la ligne d'ajouter du texte au fichier monfichier.txt.
Pour ceci on écrit dans un fichier texte comme précédemment avec le mode AppendText déclaré dans cette ligne:
               writer =File.AppendText(fileName);