Bonjour à tous,


Je développe un petit utilitaire perso me permettant de modifier des fichiers de types Texte.

Le soucis est que je dois modifier certaines lignes de ce fichier.

Je récupère un streamwriter avec la méthode Append.
Le soucis est que les writeLine m'écrivent mes données en fin de fichier et non à la position que je sélectionne avec Seek.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
m_StreamWriter = File.AppendText(m_strFichier);
                                                   m_StreamWriter.BaseStream.Seek(nPosNom, SeekOrigin.Begin);
                                                   m_StreamWriter.WriteLine(strLigneAmodifier + ";" + strNomChamp);
// je lui rajoute mon nom, avec un ; en séparateur
 
m_StreamWriter.Flush();
m_StreamWriter.Close();
Je souhaiterai donc savoir si je peux me positionner en écriture dans mon fichier en en modifier une ligne.

Je conais peu C#, mais je suis développeur, donc je ferai des efforts !
Je commence à me demander si je n'aurais pas du charger chaque ligne de mon fichier dans un tableau de string, en effet, la recherche serait simple, un index serait égal à une ligne, et je pourrais ré-écrire le contenu de ce tableau dans un fichier afin de "reconstituer" mon fichier nouvellement créer.

Sauf si je peux continuer sur ma lancée avec les streamwriter.
Qu'en pensez vous ?

Merci beaucoup,

Nixeus