Bonjour,

Mon problème est le suivant, je souhaite lire un fichier texte ligne par ligne et mettre les valeurs dans un vector.
Jusqu'ici pas de problème, sachant que le fichier ressemble à cela:

test.txt:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
0
0.0013
0.0023
0.0033
...
Je lis de cette manière:
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
 std::ifstream stream;
  std::string line;
  stream.open("test.txt",std::ios::in);
 
  if(!stream.is_open())
  {
	  std::cout <<"\t\t ---> File   doesn't exist !";
  }
 
  i = 0;
  while(std::getline(stream, line))
  {
    std::istringstream currentLineStream(line);
 
    currentLineStream >> val;
    vect[i] = val;
    i++;
  }
  stream.close();
Et pourtant en affichant le vector j'obtiens:
En fait je me suis aperçu que le problème venait du fichier texte qui est issu d'un copié-collé d'une colonne excel, ainsi je pense qu'il n y a pas de "\n" à la fin de chaque ligne du fichier.
Car si je change le fichier test.txt en :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
1.51
0.0013
0.0023
0.0033
...
0084
J'obtiens:
Comment je pourrais faire soit pour extraire correctement la colonne depuis excel, soit formatter le fichier texte pour pouvoir le lire ligne par ligne?

Merci de votre aide.

EDIT: désolé, en fait c'est une grosse erreur de ma part, j'ai pas vérifié que c'était des "." au lieu de ",", en fait le fichier texte était plutôt:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
0
0,0013
0,0023
0,0033
...


En plus j'aurai dû capter car wc -l me renvoyait le bon nombre de ligne

Désolé encore.
Post à supprimer par un modérateur qui passerait par là.