Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1525 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Lecture en C de fichier de données formaté

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Lecture en C de fichier de données formaté

n°279615
Greyblob
Posté le 05-01-2003 à 15:12:00  profilanswer
 

Salut à tous et Bonne année !!
 
Je débute en C, et je suis confronté au problème suivant.
Je dois lire un fichier formaté de la manière suivante (9 lignes) et récupérer les valeurs en double float:
 
10.0 # valeur 1
3.141592 # évidemment, ce n'est qu'un exemple
...
 
en gros, une valeur, #, et un commentaire avec espaces
 
Je suis sûr que bcp d'entre vous ont déjà été confronté au problème et l'avez résolu avec brio.. De mon côté, j'ai fait de nombreux essais, mais je tourne en rond sans y arriver. :cry:
 
Merci par avance à tous ceux qui pourront m'aider
 
GB

mood
Publicité
Posté le 05-01-2003 à 15:12:00  profilanswer
 

n°279635
sseb22
It is an awful waste of space
Posté le 05-01-2003 à 15:47:47  profilanswer
 

Code :
  1. int n;
  2. char X;
  3. n=strcmp(X , #);
  4. while (n == TRUE )
  5. {
  6.     fgets( ton caractère);
  7.     X = ton caractère;
  8.     tu stockes le caractère ailleurs;
  9.    n=strcmp(X , #);
  10. }


 
 
c incomplet voire faux mais si qqun veut bien corriger.... :sarcastic:


---------------
Ma Carrière de Joueur : 114 pages, 25 ans, 1 PDF
n°279639
Taz
bisounours-codeur
Posté le 05-01-2003 à 16:03:09  profilanswer
 

sseb22 a écrit :

Code :
  1. int n;
  2. char X;
  3. n=strcmp(X , #);
  4. while (n == TRUE )
  5. {
  6.     fgets( ton caractère);
  7.     X = ton caractère;
  8.     tu stockes le caractère ailleurs;
  9.    n=strcmp(X , #);
  10. }


 
 
c incomplet voire faux mais si qqun veut bien corriger.... :sarcastic:  

st une blague j'espere

n°279641
antp
Super Administrateur
Champion des excuses bidons
Posté le 05-01-2003 à 16:09:33  profilanswer
 

++Taz a écrit :

st une blague j'espere


 
je me disais bien que je captais rien à ce code :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°279645
Taz
bisounours-codeur
Posté le 05-01-2003 à 16:13:28  profilanswer
 

moi, non plus j'ai jamais vu ce langage  :sweat:
 
heureusement que je suis pas de mauvaise humeur en ce moment :sol:

n°279646
Greyblob
Posté le 05-01-2003 à 16:14:44  profilanswer
 

Oui ms tout ça, ça m'aide pas bcp...
 
je crois que je ne me suis pas fait comprendre....
 
A L'AAAAAAAAAAAAAIIIIIIIIIIIIIDDDDDDDDDDDEEEEEEEEEEEEE !!!!:crazy:
 
;-)
 
GB

n°279647
samuelp
Posté le 05-01-2003 à 16:15:16  profilanswer
 

++Taz a écrit :

moi, non plus j'ai jamais vu ce langage  :sweat:
 
heureusement que je suis pas de mauvaise humeur en ce moment :sol:  


 
Ouais bon y a qqs erreurs et des trucs a revoir mais je suis sur qu'il a voulu aider.

n°279650
sseb22
It is an awful waste of space
Posté le 05-01-2003 à 16:23:43  profilanswer
 

++Taz a écrit :

st une blague j'espere

tu as l'air si fort en C, je t'en prie, corrige ;)


---------------
Ma Carrière de Joueur : 114 pages, 25 ans, 1 PDF
n°279653
Taz
bisounours-codeur
Posté le 05-01-2003 à 16:29:29  profilanswer
 

en debut de ligne
 
fscanf(stream, "%f", &f);
 
apres il te faut lire tous les caractères jusqu'à un '\n' ou EOF
 
 

n°279654
sseb22
It is an awful waste of space
Posté le 05-01-2003 à 16:39:54  profilanswer
 

ou le "#"


---------------
Ma Carrière de Joueur : 114 pages, 25 ans, 1 PDF
mood
Publicité
Posté le 05-01-2003 à 16:39:54  profilanswer
 

n°279656
sseb22
It is an awful waste of space
Posté le 05-01-2003 à 16:40:49  profilanswer
 

si c un "\n" : c qu'on a pris trop de caractère
 
si c un EOF : on s'arrete
 
si c un "#" : on passe à la ligne suivante
 
 
 
 
c ça ?


---------------
Ma Carrière de Joueur : 114 pages, 25 ans, 1 PDF
n°279658
Taz
bisounours-codeur
Posté le 05-01-2003 à 16:47:10  profilanswer
 

"\n" est une chaine.
 
 
bon:
 
soit une ligne
 
"1.23456    # a z   eeeee  rrr  t t y y y yu \n"
 
avec fscanf on essaye d'extraire unb flottant (retour de fscanf a verifier)
 
une fois cela fait, on cherche a passer à la ligne suivante. la solutionla plus simple c'est de progresser dans le flux en lisant caractère par caractère: si on tombe sur un '\n', c'est qu'on est arrivé au debut d'une nouvelle ligne, si on tombe sur EOF, c'est qu'on est en fin de fichier


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Lecture en C de fichier de données formaté

 

Sujets relatifs
Lecture d'un fichier texte contenant des entiers...comment ajouter une ligne en fin de fichier avec java ??
Existence d'un fichier comment se positionner au début d'un fichier ?
Ouverture d'un fichier sur une machine distante en réseau local[PHP] Création du fichier
j'ai un probleme bizarre avec mon programme qui lit dans un fichier[PHP] Afficher le nombre de fichier d'un dossier
[PHP] - Commande pr connaitre le chemin d'un fichier 
Plus de sujets relatifs à : Lecture en C de fichier de données formaté


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR