Extraction des données d'un FILE en C++

sdfsam Messages postés 78 Statut Membre -  
sdfsam Messages postés 78 Statut Membre -
Bonjour,

j'ai fait un code en Dev C++ qui fait la lecture d'un FILE mais mon probleme est comment puisse-je faire son traitement afin d'extraire les données lues?
je veux que mon file aura un structure bien definie exemple:

typedef struct monfile

{
int nb;// nombre de ligne
char nomfile[20];// nom fichier
char ch;// caractére qui constitue les ligne
.........
}

FILE *f; // pointreur ver un FILE


mon souci est comment faire pour que mon FILE *f soit de la structure monfile
je pense c'est comme ça

monfile *f;

mais ça donne un conflet car f est declaré de type FILE donc ou est l'erreur

SVP AIDEZ MOI???

Bonne journée

5 réponses

  1. flo13142 Messages postés 74 Statut Membre 18
     
    Salut,

    je ne suis pas bien sur d'avoir compris ton problème, mais si tu veux lire ou écrire une structure définie tu as respectivement fread et fwrite à utiliser apres un fopen.

    pour écrire ta struct f :
    FILE *file;
    file = fopen ("monFichier.bin", "w");
    fwrite (f, sizeof (monfile), 1, file);
    fclose (file);
    


    pour lire globalement la même chose avec fread
    FILE *file;
    file = fopen ("monFichier.bin", "r");
    fread (f, sizeof (monfile), 1, file);
    fclose (file);
    


    0
  2. sdfsam Messages postés 78 Statut Membre
     
    merci bien
    mon souci est comment je peux faire la relation entre la structure file et le FILE

    et comment faire extraire les données de mon file pour un traitement eventuel
    0
  3. Pacorabanix Messages postés 4122 Date d'inscription   Statut Membre Dernière intervention   663
     
    bonjour,
    pour dire les choses autrement :

    en C (car visiblement c'est du C que tu fais) pour utiliser les fonctions fopen, fwrite, fread ... tu dois utiliser une struct FILE. c'est tout.

    après si toi tu veux faire une structure pour la remplir d'informations complémentaires sur le fichier, c'est ton problème.

    Il n'y a pas a priori de lien entre les deux.

    Ouvre le fichier, tu lis ce que tu veux lire, et tu le mets dans ta structure, elle ne peut pas se "remplir automatiquement" à l'ouverture du fichier, si c'est ça que tu voulais.

    FILE * file; //pointeur sur un FILE  
    monfile file_info; // ta structure  
    
    file = fopen("monfichier.txt", "r");  
    
    //pour mettre le nom du fichier dans ta structure... ben tu dois le faire toi-même  
    strncpy(file_info.nomfile, "monfichier.txt", 19);  
    
    //idem pour le nombre de lignes   
    int nombre_lignes;  
    //code pour compter le nombre de lignes  
    // ...  
    // ...  
    // ...  
    file_info.nb = nombre_lignes;  
    
    // etc... pour toutes les infos que tu veux mettre dans file_info
    0
  4. sdfsam Messages postés 78 Statut Membre
     
    Bonjour,

    Mes données sont dans un fichier txt qui représentent un Arbre de la manière suivante :

    avec des portes logiques (OU par p*1,ET par p+0) et leurs entrées qui seront soient:

    d'autres portes ou des événements simple ou leurs complément (e+1 ou e-1) c'est des

    appellations mon probleme est cmt faire extraire les combinaisons des événemhttp qui

    mènent au sommet (les coupes minimales)

    pour la lecture c'est bon, il me reste juste l'extraction les donnée (les coupes minimales)

    Exemple :

    p+0 e+1 e+2 e+3 p*1 p*2

    p*1 p+4 p*5

    p*2 p+6 p+7

    p*3 p+8 p*9

    p+4 e+16 e+18 g+10

    p*5 e+4 e+5e+6 e+10 e+12 e+14

    p+7 e+7 e+8 e+9 e+11 e+13 e+15

    p+8 e+17 e+19 g+13

    p*9 e+4 e+5

    p+10 e+4 e+5 e+6 e+10 e+12 e+14

    p*11 e-4 e-5 e-6

    merci d'avance pour m'aider ou orienter

    Configuration: Windows Vista / Firefox 3.6.13
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. sdfsam Messages postés 78 Statut Membre
     
    moi je veux utiliser la structure pour définir les la structure de mon fichier

    mon fichier est constitué des lignes dans chaque ligne il y a des informations

    par example la premier ligne nous donne le nombre de ligne dans mon file
    la seconde la longeure de la ligne
    pui les lignes qui suivent sont mes données à traiter (exp un arbre qui est constitu des portes logique comme j'ai deja expliqué)

    merci de me donner la structure ???
    merci d'avance.........
    0