Gros newbie inside .... lecture de char dans un fichier HELP !!!

Gros newbie inside .... lecture de char dans un fichier HELP !!! - C++ - Programmation

Marsh Posté le 09-10-2002 à 15:02:36    

Bon, ca fait deux jours que je ne vois pas comment aborder le probleme ...  
 
voila je voudrai recuperer des strings dans un fichier ASCII constitue comme suit :  
 
100 200 145 32 log_mesg 45 78 45
14 12 457 145 log_bff 114 74 14 12 32 12
 
mon probleme etant en fait de pouvoir separer les champs et de les enregistrer dans un tableau de caracteres, et ceux pour chaque ligne.
En fait si j'utilise la fonction fgetc je pourrai ensuite concatener mes valeurs de facon a constituer mes champs. Mais comment gerer la fin de ligne pour continuer a la ligne d'apres et arreter la lecture de mon fichier ??  
 
 
si je suis assez clair et que quelqu'un peut m'orienter vers un debut de solution ce serait cool merci...  
 

Reply

Marsh Posté le 09-10-2002 à 15:02:36   

Reply

Marsh Posté le 09-10-2002 à 16:46:12    

En quoi la fin de ligne pose un probleme? Tu n'as qu'a le lire ligne par ligne. Le caractere retour a la ligne est '\n' en C/C++ (attention a bien l'avoir ouvert en texte et non pas en binaire!)
 
Quant a la fin du file elle est indiquée par ta fonction getc qui te renvoie alors EOF.


Message édité par Ace17 le 09-10-2002 à 16:47:40
Reply

Marsh Posté le 09-10-2002 à 16:54:35    

OK merci pour ta reponse ... em fait j'essaie d'utiliser la classe CString pour y parvenir, car je voudrais stocker la valeur de chaque champ dans un tableau hormis le texte ...  
Arf ! j'aime pas la manipulation de string je suis nul ...  

Reply

Marsh Posté le 11-10-2002 à 21:34:41    

Hmmmm tu te compliques la vie pour rien...
A mon avis commence par charger ca dans un tableau de char normal, et apres si tu en as besoin copie ca dans un CString

Reply

Marsh Posté le 11-10-2002 à 21:39:06    

C ou C++?
 
C => fgets, fscanf / strtok
C++ => std::getline + std::stringstream


---------------
du bon usage de rand [C] / [C++]
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed