[Résolu] un stringstream et un erase !
Bonjour
Tout d'abord, je charge un fichier texte dans un buffer
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
//buffer contenant l'intégralité du fichier log
std::stringstream buffer;
[...]
//---ouverture du fichier / ios::in -> ecriture / ios::binary -> fichier texte
//---charger dans le buffer
ifstream fichier_log ("logtest.txt", ios::in|ios::binary);
if ( fichier_log ) // ce test échoue si le fichier n'est pas ouvert
{
// copier l'intégralité du fichier dans le buffer
buffer << fichier_log.rdbuf();
//std::cout << "Taille du buffer : " << buffer.str().size() << '\n';
// nous n'avons plus besoin du fichier !
fichier_log.close();
//cout << buffer.str()<<endl;
} |
Ensuite je voudrais supprimer une partie du texte du buffer , que j'ai copier préalablement dans une autre variable. Comme ca à la lecture suivante du buffer j'arrive directement au bon endroit, et donc je n'ai pas besoin de parcourir le buffer.
Donc j'ai eu la bonne idée de faire un petit :
Code:
1 2
|
buffer.str().erase(buffer.str().begin(),buffer.str().begin()+300); |
Mais ca ne marche pas ... j'ai vu après que le .str() ne permet pas de modifié la chaîne contenu dans le buffer. Donc depuis je suis très triste car je n'ai pas de solution a mon petit problème :cry:
Donc si vous avez une solution pour me rendre heureux n'hésitez pas :) merci d'avance!