IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

lire un fichier ligne par ligne


Sujet :

C

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 102
    Points : 53
    Points
    53
    Par défaut lire un fichier ligne par ligne
    Bonjour,
    Je suis complètement débutant en C, et je voudrais lire un fichier ligne par ligne. Faut-il utiliser fscanf?

    Merci d'avance

  2. #2
    Membre actif Avatar de blackhorus
    Inscrit en
    Février 2003
    Messages
    209
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 209
    Points : 226
    Points
    226
    Par défaut
    essaye plutôt fgets()

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    102
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 102
    Points : 53
    Points
    53
    Par défaut
    ca fait un truc du genre ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
       fp_cal=fopen(calib_path,"r");
       line=fgets(fp_cal);
       fclose(fp_cal);

  4. #4
    Membre expérimenté
    Inscrit en
    Décembre 2004
    Messages
    1 478
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 478
    Points : 1 664
    Points
    1 664
    Par défaut
    N'hesite pas a ouvrir un livre de C, ou a lire les manuels des fonctions. fgets() ne s'utilise pas comme cela. De plus, c'est un sujet recurrent dans ce forum, on repond a une question similaire entre deux a trois fois par semaine...

  5. #5
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par peuf23
    ca fait un truc du genre ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
       fp_cal=fopen(calib_path,"r");
       line=fgets(fp_cal);
       fclose(fp_cal);
    Non.

    Arrête de programmer au hasard. Le langage C, ça s'apprend. Et il y a plutôt intéret à être rigoureux, sinon, ça te pète à la gueule rapidement...

    Il y a des livres, des tutoriels en ligne...

  6. #6
    Membre à l'essai
    Inscrit en
    Juillet 2005
    Messages
    19
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 19
    Points : 17
    Points
    17
    Par défaut
    Si tu tournes sous linux, tu as une aide en ligne pour les differentes fonctions que tu utilises:
    tu t'appercevras que fgets s'utilise de la maniere suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char * fgets (char * s, int size, FILE * stream);
    s est un pointeur dans lequel les donnees lues vont être inscrites. fgets lit jusqu'à size-1 octets jusqu'a ce qu'il rencontre retour chariot ou EOF. stream est le pointeur retourne par ta fonction fopen.
    fgets retourne le pointeur "s" si elle reussi sinon NULL.

    bon courage pour l'apprentissage du C.

    Bibi

  7. #7
    Expert éminent sénior
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Points : 20 985
    Points
    20 985
    Par défaut
    Citation Envoyé par bibi_64
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    char * fgets (char * s, int size, FILE * stream);
    s est un pointeur dans lequel les donnees lues vont être inscrites.
    Un pointeur est une variable de quelques bytes. Tu ne vas pas écrire grand chose dedans. Par contre, il doit contenir l'adresse d'un tableau de char dont la taille est passée en 2 ème paramètre. Merci de ne pas induire le débutant en erreur...

    http://emmanuel-delahaye.developpez.....htm#pointeurs
    http://emmanuel-delahaye.developpez....tes.htm#saisie
    http://emmanuel-delahaye.developpez....s.htm#fichiers

Discussions similaires

  1. Réponses: 9
    Dernier message: 03/07/2014, 18h08
  2. lire une base de donnee ligne par ligne
    Par thildouille dans le forum Langage
    Réponses: 9
    Dernier message: 03/06/2011, 00h50
  3. lire fichier .txt (NOTEPAD) ligne par ligne
    Par skambram dans le forum VB.NET
    Réponses: 1
    Dernier message: 06/06/2009, 18h41
  4. lire un fichier de string ligne par ligne
    Par bilzzbenzbilz dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 11/02/2009, 10h44
  5. Réponses: 3
    Dernier message: 16/10/2007, 20h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo