Bonjour,

je suis débutante et je tente de déterminer la position de la dernière string "lenght 13" dans un fichier texte. Voici mon code:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
int pos;
std::string ligne;
int no_pos;
vector<int> position;
int depart;
 
  ifstream file ("Portmon.log");// Ouverture du fichier texte
  while (file.eof()) //Tant que nous ne sommes pas à la fin du fichier.
{
      std::getline(file,ligne );//Lecture de la ligne                                  
      string::size_type loc = ligne.find("lenght 13:", 0 );
       if( loc != string::npos ) //Si on trouve un lenght 13
       {  
           pos=file.tellg(); //On trouve la position de ce lenght13 dans le fichier.
           no_pos++;// Incrémente l'indice du vecteur.
           position.push_back(pos);//Enregistre la position dans le vecteur. 
        }
             depart = position[no_pos]// Indique la derniere position d'un lenght  
                                                  13 trouvé.
             file.close();
	cout<<depart;
}
Malheureusement, on n'arrive pas a sortir de la boucle...Donc, je suppose que cest parce que getline reste le même ???

Merci de votre aide, c'est très apprécié!!!