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 du texte à partir d'un fichier


Sujet :

C

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 6
    Points : 4
    Points
    4
    Par défaut Lire du texte à partir d'un fichier
    Bonjour,

    j'ai besoin d'aide les amis je veux lire un paragraphe à partir d'un fichier et le stocker dans une liste chaîne .le problème c'est que la lecture s’arrête au premier espace aidez-moi SVP

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Montre ton code qui pose problème et on pourra t'aider.
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 6
    Points : 4
    Points
    4
    Par défaut
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    typedef struct para{
    char titp[30]; 
    char p[2000];
    struct para *next;
    }para;
    typedef struct title{
    	char titre[30];
    	para *list_para;
    	struct title *next;
    }tit;
     
     
     
    tit *listc;
    char titp[30];
    char nomp[30];
    char pr[5];
    char bg[30];
     
     
     
    void remplir(){
    	listc=NULL;
    tit *p=NULL;
    para *pr;
    char *nomf = "f.txt";
    FILE *f;
    f = fopen(nomf,"r");
    if(!f) printf("Erreur !!");
    char c;
    int t=0;
    do
    {
    if(t!=1) fscanf(f,"%c ",&c);
    p = (tit*)malloc(sizeof(tit));
    fscanf(f,"%s\n",p->titre);
    do
    {
    fscanf(f,"%c ",&c);
    if(c=='p')
    {
    pr = (para*)malloc(sizeof(para));
    fscanf(f," %s %s\n",pr->titp,pr->p);
    printf("%s",pr->p);
    pr->next = p->list_para;
    p->list_para = pr;
    }
    else
    t=1;
    }while((c=='p')&&(!feof(f)));
    p->next = listc;
    listc = p;
    }while(!feof(f));
    fclose(f);
    }

    le ficher f.txt est organiser de la façon suivante
    t informatique
    p langage_c le jdejfjdfkdf hshddklldm skskdskhfs lksjdjsjds nnhsfhhd
    ....
    le titre j'arrive à le lire (langage_c) il n'est pas separer par des espaces mais le paragraphe s’arrête au premier mot jdejfjdfkdf comment faire SVP

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2012
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2012
    Messages : 53
    Points : 112
    Points
    112
    Par défaut
    Salut,
    ton code est vraiment illisible, pense à nommer bien tes variables avec des noms significatifs, faire des indentations et évite l'utilisation des variables globales, parce que c'est difficile de localiser l'erreur dans un code comme le tien.

  5. #5
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Points : 12 462
    Points
    12 462
    Par défaut
    Citation Envoyé par b-med Voir le message
    Salut,
    ton code est vraiment illisible, pense à nommer bien tes variables avec des noms significatifs, faire des indentations et évite l'utilisation des variables globales, parce que c'est difficile de localiser l'erreur dans un code comme le tien.
    +1... je vais même pas m'embêter à le lire

    • Lignes vide entre les blocs de code
    • Indentation

    C'est un minimum de présentation
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  6. #6
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 377
    Points : 23 663
    Points
    23 663
    Par défaut
    Citation Envoyé par b-med Voir le message
    Salut,
    ton code est vraiment illisible, pense à nommer bien tes variables avec des noms significatifs, faire des indentations et évite l'utilisation des variables globales, parce que c'est difficile de localiser l'erreur dans un code comme le tien.
    Citation Envoyé par Franck.H Voir le message
    +1... je vais même pas m'embêter à le lire

    • Lignes vide entre les blocs de code
    • Indentation
    C'est un minimum de présentation
    Je signale tout de même que le primo-postant avait initialement déposé son code sans les balises CODE et que, même si en principe vBulletin conserve dans ses bases le message tel qu'il a été saisi, il est possible que les indentations aient été oblitérées par l'opération du copier-coller.

  7. #7
    Modérateur

    Avatar de Bktero
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Juin 2009
    Messages
    4 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués

    Informations forums :
    Inscription : Juin 2009
    Messages : 4 481
    Points : 13 678
    Points
    13 678
    Billets dans le blog
    1
    Par défaut
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    typedef struct para
    {
        char titp[30];
        char p[2000];
        struct para *next;
    } para;
     
    typedef struct title
    {
        char titre[30];
        para *list_para;
        struct title *next;
    } tit;
     
     
     
    tit *listc;
    char titp[30];
    char nomp[30];
    char pr[5];
    char bg[30];
     
    void remplir()
    {
        listc=NULL;
        tit *p=NULL;
        para *pr;
        char *nomf = "f.txt";
        FILE *f;
     
        f = fopen(nomf,"r");
     
        if(!f) printf("Erreur !!");
     
        char c;
        int t=0;
        do
        {
            if(t!=1) fscanf(f,"%c ",&c);
            p = (tit*)malloc(sizeof(tit));
            fscanf(f,"%s\n",p->titre);
     
            do
            {
                fscanf(f,"%c ",&c);
     
                if(c=='p')
                {
                    pr = (para*)malloc(sizeof(para));
                    fscanf(f," %s %s\n",pr->titp,pr->p);
                    printf("%s",pr->p);
                    pr->next = p->list_para;
                    p->list_para = pr;
                }
                else
                    t=1;
            }
            while((c=='p')&&(!feof(f)));
     
            p->next = listc;
            listc = p;
        }
        while(!feof(f));
     
        fclose(f);
    }
    Voici le code formaté de manière lisible

    Je l'ai lu en diagonale mais :

Discussions similaires

  1. Copier du texte à partir d'un fichier PDF
    Par blood_of_dragon dans le forum Android
    Réponses: 0
    Dernier message: 11/01/2013, 18h52
  2. lire des données à partir d'un fichier texte
    Par Flaherty Mc Coillean dans le forum C
    Réponses: 8
    Dernier message: 15/04/2009, 14h03
  3. Réponses: 2
    Dernier message: 06/02/2008, 15h32
  4. utiliser xslt pour afficher du texte à partir d'un fichier xml
    Par med_ellouze dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 23/08/2007, 14h52
  5. Comment Lire une valeur à partir d'un fichier XML en C++?
    Par Hamdi Hedhili dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 13/12/2005, 10h09

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