Forums Rue-Montgallet.com
Rue-Montgallet.comRue-Hardware.comRue-Occasion.comRue-DVD.comRue-Jeuxvideo.comRue-AudioVideo.comRue-Telephone.comForums
S'inscrire | S'identifier |
| Recherche avancée | Aide
 
 

Il y a 54 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici

 Mot :   Pseudo :  
 
Bas de page
Auteur
 Sujet :

lire des infos sur un txt pour les envoyer dans un vecteur

 
n°13013
aurelien19​82
Profil : Jeune recrue
Posté le 11-05-2005 à 19:16:44  profilanswer
 

Bonjour,
 
Je suis un peu nulos en C++ et j'aurais besoin d'un coup de main: je dispose d'un fichier ".txt" dans lequel j'ai des nombres stockes. je souhaiterais les envoyer dans un vecteur.  les nombres sont separes soit par des espaces, soit par des fin de lignes. J'ai fait un petit test avec un fichier tout basique avec 17 chiffres, j'ai compile, ca donne aucune erreur... mais a l'execution, je lui demande d'afficher une des corrdonnees du vecteur, et la il y est pas du tout...  Si qqun peut me depanner, ce serait vraiment sympa. voila mon code:

Code :
  1. #include <fstream>
  2. #include <iostream>
  3. #include <stdlib.h>
  4. #include <stdio.h>
  5. using namespace std;
  6. int main ()
  7. {
  8. int i;
  9. int c;
  10. int x [17];
  11. ifstream testfile ("test.txt" );
  12. if (! testfile.is_open())
  13. { cout << "Error opening file"; exit (1); }
  14. else c = getchar();
  15. for( i = 1; (i < 18); i++ )
  16.  x[i] = c;
  17.  c = getchar();
  18. }
  19. cout <<"x[7] vaut"<< x[7] << endl;
  20. return 0;
  21. }


d'avance merci  :hello:

n°13015
P-Y
Profil : Vieux de la vieille
Posté le 11-05-2005 à 21:37:22  profilanswer
 

getchar ne recupere qu'un seul caractere, donc par exemple si t'as le nombre 26, ca ne recuperera que le 2, et encore ce sera meme pas '2' mais son code ascii...
Pour recuperer un nombre faut plutot utiliser un scanf("%d", &c), avec %f pour un nombre flottant ;)

n°13076
aurelien19​82
Profil : Jeune recrue
Posté le 17-05-2005 à 02:49:37  profilanswer
 

merci, ca a effectivement résolu mon probleme

n°14210
POO
Profil : Jeune recrue
Posté le 19-07-2005 à 03:23:29  profilanswer
 

Salut, pour t'aider, essaie toujour d'organiser ton code.
 
 

Code :
  1. if (testfile.bad()) {cout << "erreur de fichier " << endl;} //ou la sortie 'cerr'
  2. else {
  3. for (int i;( !testfile.eof() ) ; ++i){ fileIn >> x[i]; }
  4. //Simplement si le fichier est composé que de chiffre
  5. }


 
tien moi au courant


Message édité par POO le 19-07-2005 à 03:29:29

Aller à :
Ajouter une réponse