Bonjour,
Je souhaiterais effacer plusieurs lignes d’un fichier texte, quelle méthode utiliser ? Faut-il créer un fichier temporaire ?
D’avance merci
Cordialement
Bonjour,
Je souhaiterais effacer plusieurs lignes d’un fichier texte, quelle méthode utiliser ? Faut-il créer un fichier temporaire ?
D’avance merci
Cordialement
- Ouvrir le fichier en Lecture
- Le lire complètement et stocker son contenu dans des structures de données, comme un std::vector<std::string>.
- Fermer le fichier
- Faire votre bidouille dans les structures de données, comme supprimer des lignes.
- Ouvrir le fichier en écriture avec truncage
- Copier les structures de données dans le fichier
- Fermer le fichier
L'utilisation d'un fichier temporaire, c'est pour blinder le cas d'un crash entre l'étape 5 et l'étape 7.
Bonjour bacelar,
A vrai dire pour l’instant je n’y connais rien à propos des vector, existe-il un autre type de structure de donnée capable de contenir un peu plus de mille lignes de donnée ?
Je ne connais pas non plus le terme (une lacune de plus cela fait beaucoup, comme dirait l’autre « on ne se refait pas ») « truncage » pouvez-vous éclairer ma petite lanterne ?
Un dernière question, donnez-vous des cours ?
Merci d’avance pour votre patience.
mauvaise réponse
vector est une des structures de données de base du langage (avec deque, list, map et set), qu'il faut apprendre à connaitre. Qui plus est, c'est probablement la bonne solution ici.
Elle n'est pas compliquée, mais il faut prendre le temps de se pencher dessus.
Si le fichier est gros, il peut être intéressant de choisir une list ou une deque.
Mais dans les trois cas, tu auras le meme code: push_back, begin, end, et erase-remove.
Partager