|
|
|
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é:
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); |
|
|
|