Bonjour,
Je voudrais faire un code pour arranger un fichier texte dans lequel sont présentes des données en colonnes. Je souhaiterais changer certaines de ces données après les avoir controler c'est-à-dire que je balaye toutes les données de mon fichier en vérifiant à chaque fois si la donnée correspondent ou non à ce que veux. Si oui, je passe à la suivante. Si non, je l'efface et j'en rajoute une nouvelle.
Je précise qu'une ligne n'est pas formatée pour faire taille constante.
Pour moi, il y a 2 solutions :
1/ J'ouvre un fichier vide et mon fichier à arranger et je recopie mon fichier dans le vide en changeant les données pas bonnes => solution simple mais pas élegante.
2/ J'ouvre mon fichier et dès que je trouve une donnée pas bonne, je l'efface et je la remplace à la volée.
Je voudrais mettre en place la 2° solution. Je pense que je vais jouer avec la classe fstream et notamment les pointeurs de position pour revenir en arrière dès que j'ai lu ma donnée erronée pour l'effacer mais déjà je ne même pas comment effacer la donnée erronée dans le fichier...Est-ce que ma donnée erronée va être écrasée si j'écris à son début ou est-ce qu'elle va être "poussée"?
Pour ce qui est de l'effacement j'ai pensé à utiliser le code "8" (en base 10 et 16) qui correspond au backspace en ascii mais je ne sais pas si ça marchera.
Partager