FILE et Structure en C++

FILE et Structure en C++ - C++ - Programmation

Marsh Posté le 11-01-2011 à 10:51:05    

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:
 
<code><gras>typedef struct monfile
 
{
int nb;// nombre de ligne
char nomfile[20];// nom fichier
char ch;// caractére qui constitue les ligne
.........
}</gras>
 
FILE *f; // pointreur ver un FILE</code>
 
 mon souci est comment faire pour que mon FILE *f soit de la structure monfile
je pense c'est comme ça
 
 <gras>monfile *f;</gras>  
 
mais ça donne un conflet car f est declaré de type FILE donc ou est l'erreur  
 
SVP AIDEZ MOI???  
 
Bonne journée

Reply

Marsh Posté le 11-01-2011 à 10:51:05   

Reply

Marsh Posté le 11-01-2011 à 12:19:53    

Euh, tu es sur que c'est du C++, ce que tu fais?
Parce que si tu fais du C++ et pas du C, je vois pas ce qu'un FILE vient faire ici.
En C++, pour accéder à un fichier, à la base, tu as les classes ifstream, ofstream et fstream.
A+,

Message cité 1 fois
Message édité par gilou le 11-01-2011 à 12:20:08

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 11-01-2011 à 13:31:50    

gilou a écrit :

Euh, tu es sur que c'est du C++, ce que tu fais?
Parce que si tu fais du C++ et pas du C, je vois pas ce qu'un FILE vient faire ici.
En C++, pour accéder à un fichier, à la base, tu as les classes ifstream, ofstream et fstream.
A+,


 je travaille avec Dev C++ compilateur de C++
 
j'espere que vius avez copmris mon probleme
 
 
aidez moi svp

Reply

Marsh Posté le 11-01-2011 à 13:40:08    

gilou a très bien compris ton problème justement : en C++, je ne vois pas bien ce que tu t'embêtes avec des FILE*

 

Et de toute façon, ce n'est qu'une partie de ton problème. Si je comprends bien, tu veux créer (ou lire ?) un fichier ayant une structure similaire à ta struct, et dans ce cas-là, ben, faut écrire les données une à une dans le fichier. Pour la lecture, c'est à peu près pareil.

Message cité 1 fois
Message édité par Elmoricq le 11-01-2011 à 13:41:45
Reply

Marsh Posté le 11-01-2011 à 14:34:06    

Elmoricq a écrit :

gilou a très bien compris ton problème justement : en C++, je ne vois pas bien ce que tu t'embêtes avec des FILE*
 
Et de toute façon, ce n'est qu'une partie de ton problème. Si je comprends bien, tu veux créer (ou lire ?) un fichier ayant une structure similaire à ta struct, et dans ce cas-là, ben, faut écrire les données une à une dans le fichier. Pour la lecture, c'est à peu près pareil.


 
moi je veux:
 
-lire un fichier //j'ai reussi à faire
-écrire une structure qu'elle aura comme des champs les types de mes données sur mon file exp:
nb de lignes,nom de fichier ,les caractères constituant mes ligne ....
(mon fichier en faite c'est un arbre composé des portes logique et leurs entrées dans chaque ligne)
 
mon souci est comment puisse -je faire la relation entre mon fichier (FILE *f) et la structure créee
 
 
merci bien

Reply

Marsh Posté le 11-01-2011 à 15:54:31    

Et moi, mon souci, c'est que tu as posté ceci dans la catégorie C++ du forum.
 
En C il faudra que tu fasses tout à la main:
Tu peux inclure la structure FILE *f comme élément de la structure monfile, et il faudra que tu te définisses des fonctions de lecture et écriture (et d'ouverture fermeture) prenant pour paramètre une structure monfile, et qui mettront à jour a chaque opération les champs de cette structure et feront appel en interne aux fonction sur un FILE.
Mais à aucun moment tu ne pourras magiquement transformer un FILE en une structure perso que tu as défini.
A+,

Message cité 1 fois
Message édité par gilou le 11-01-2011 à 16:01:51

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
Reply

Marsh Posté le 11-01-2011 à 16:25:30    

gilou a écrit :

Et moi, mon souci, c'est que tu as posté ceci dans la catégorie C++ du forum.
 
En C il faudra que tu fasses tout à la main:
Tu peux inclure la structure FILE *f comme élément de la structure monfile, et il faudra que tu te définisses des fonctions de lecture et écriture (et d'ouverture fermeture) prenant pour paramètre une structure monfile, et qui mettront à jour a chaque opération les champs de cette structure et feront appel en interne aux fonction sur un FILE.
Mais à aucun moment tu ne pourras magiquement transformer un FILE en une structure perso que tu as défini.
A+,


 
 
mon fichier en faite c'est un arbre composé des portes logique et leurs entrées dans chaque ligne
 
moi je dois spesifier dans ma structure le nom de l'arbre,le nobre de portes et le nombre de tout les entreées
 
est ce que c'est possible
 comme résultat:  
- je dois  traiter chaque  porte et extraire les entrée
tous ça pour extraire les coupes minimale de mon arbre

Reply

Marsh Posté le 11-01-2011 à 16:45:25    

On va reessayer:
1/ le (pseudo-)code tu presentes est plus du C que du C++
2/ tu n'arrives meme pas a expliquer ton probleme correctement.  Quel est le format de ton fichier:
2.a/ texte?  Il faudrait alors une description plus detaillee.  Il va te falloir ecrire un parseur.  lex et yacc peuvent aider.  
2.b/ binaire?  Il faudrait alors une description plus detaillee.  Il va te falloir ecrire un parseur. lex et yacc peuvent aider, mais c'est une facon un peu non conventionnelle de les utiliser.
2.c/ dump de memoire. Il faudrait alors une description plus detaillee. Et tu as des gros risques d'absence de portabilite. ...


---------------
The truth is rarely pure and never simple (Oscar Wilde)
Reply

Marsh Posté le 11-01-2011 à 20:31:12    


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
 
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  
 
mon but est de faire le traitement et d'extraire les coupes minimales selon des algorithmes bien défini
 
j'ai bien reussi à la lecture mais j'arrive pas à le traiter  comme j'ai déjà dis en haut
 
merci d'avance pour m'aider ou orienter ............

Reply

Marsh Posté le 12-01-2011 à 16:12:04    

sdfsam1 a écrit :


merci d'avance pour m'aider ou orienter ............


Comme l'a dit Un Programmeur, regarde du côté de lex et yacc pour lire ton fichier.


---------------
sheep++
Reply

Marsh Posté le 12-01-2011 à 16:12:04   

Reply

Marsh Posté le 12-01-2011 à 17:31:24    

En C++, boost spirit http://boost-spirit.com/home/
Enfin bon, j'attrape mal à la tête rien qu'en regardant le premier exemple simple de loin http://boost-spirit.com/home/artic [...] spirit-qi/  :D

Message cité 1 fois
Message édité par SquiZZ le 12-01-2011 à 17:31:38
Reply

Marsh Posté le 12-01-2011 à 22:01:20    

SquiZZ a écrit :

En C++, boost spirit http://boost-spirit.com/home/
Enfin bon, j'attrape mal à la tête rien qu'en regardant le premier exemple simple de loin http://boost-spirit.com/home/artic [...] spirit-qi/  :D


 
j'ai pas bien compris ceux vous avez donné
 
moi je travaill sous DEV C++ compilateur de C

Reply

Marsh Posté le 13-01-2011 à 09:14:30    

Je te suggere de lire et d'appliquer http://forum.hardware.fr/hfr/Progr [...] 0261_1.htm


---------------
The truth is rarely pure and never simple (Oscar Wilde)
Reply

Marsh Posté le 13-01-2011 à 09:27:45    


 
 
 
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.........

Reply

Sujets relatifs:

Leave a Replay

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