Lecture de fichier texte

vba_blitz Messages postés 32 Date d'inscription dimanche 12 juin 2005 Statut Membre Dernière intervention 26 juin 2007 - 4 avril 2007 à 09:48
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 - 4 avril 2007 à 17:02
Bonjour,
avec le code ci dessous, je recupere les donnees d'un fichier comprenant 2 colonnes. Mais ce code ne recupere pas la premiere ligne et recupere la derniere en double. Avez vous une idee sur la question.
Merci

ifstream file;
string line;
file.open(path_fichier);
if (file.is_open())
{
  while (getline(file,line))
 {  
  compteur++;
  file >> date_f >> prix_f;
 }
}

2 réponses

turnerom Messages postés 492 Date d'inscription samedi 10 juillet 2004 Statut Membre Dernière intervention 12 janvier 2012 1
4 avril 2007 à 11:22
ifstream file;
string line;
file.open(path_fichier);
if (file.is_open())
{
while (getline(file,line))
{
compteur++;
file >> date_f >> prix_f;
}
}


Tout simplement ton getline recupère une ligne et ton
file >> date_f >> prix_f; aussi donc la 1ere saute forcement.

fait plutot un decoupage de ta variable line que file >> date_f >> prix_f;
0
luhtor Messages postés 2023 Date d'inscription mardi 24 septembre 2002 Statut Membre Dernière intervention 28 juillet 2008 6
4 avril 2007 à 17:02
#include <sstream>

...

ifstream file;
string line;
istringstream iss;
file.open(path_fichier);
if (file.is_open())
{
  while (getline(file,line))
 {  
  compteur++;
  iss.str(line);
  iss >> date_f >> prix_f;
  // Mais la je comprend pas, car tu écrases toujours les deux memes variables.
 }
}
0
Rejoignez-nous