[C++ + XML] Recuperer les donnees dans une struc ?

Recuperer les donnees dans une struc ? [C++ + XML] - C++ - Programmation

Marsh Posté le 25-04-2002 à 14:05:12    

C'est possible ?
Y a des fonctions ou il faut se parcourir tout le fichier en mode texte ?
 
thx les cailles [:draculax]


---------------
Super.
Reply

Marsh Posté le 25-04-2002 à 14:05:12   

Reply

Marsh Posté le 25-04-2002 à 15:12:09    

[:godbout] j'aime bien ton smily perso

Reply

Marsh Posté le 25-04-2002 à 15:13:40    

c pas le sien :p
sinon, ca doit se faire aussi avec les DOM

Reply

Marsh Posté le 25-04-2002 à 15:16:56    

Goueg a écrit a écrit :

c pas le sien :p
sinon, ca doit se faire aussi avec les DOM  



si c le sien faut taper [: godbout ] pour le faire
[:godbout]

Reply

Marsh Posté le 25-04-2002 à 15:16:59    

Goueg a écrit a écrit :

c pas le sien :p
sinon, ca doit se faire aussi avec les DOM  




 
Si c'est le mien [:godbout]
 
En + c'est moi qui l'ai fait sous paint alors [:yaisse2]
 
Mais tu veux j'ai la version plus grosse:
 
http://site.voila.fr/chrisbk/encaisse2.gif
 
 
 
 
 
 
 
 
Bref pour le taf, tu peux expliquer un peu plus stp ;)


---------------
Super.
Reply

Marsh Posté le 25-04-2002 à 15:17:29    

mr_mat a écrit a écrit :

si c le sien faut taper [: godbout ] pour le faire
[:godbout]  




 
:hello: l'guitariste :)


---------------
Super.
Reply

Marsh Posté le 25-04-2002 à 15:18:36    

Godbout a écrit a écrit :

 
 
:hello: l'guitariste :)  



:hello:
 
bon pr ton pb y'a des fonctions ca c'est sur, même que ca serait fread fwrite que ca m'étonnerai pas (en c++)

Reply

Marsh Posté le 25-04-2002 à 15:23:17    

Ouais donc en gros faut que je me tape une fonction qui decortique tout ca koi :/
Je pensais qu'avec le xml y avait moyen de recuperer tout ca dans une struct puisque c'est le but de ce language (de separer struct et style)


---------------
Super.
Reply

Marsh Posté le 25-04-2002 à 15:27:26    

c'est peut être possible je sais pas je connais pas le XML.
 
Goueg connait un peu il me semble faut voir si il repond.

Reply

Marsh Posté le 25-04-2002 à 15:29:16    

ah dsl moa je parlais de [:draculax] ;)
les DOM j connais rien, je sais juste que ca pourrait t'etre utile, c une des facons de le faire avec le PHP ossi mais comme ya + simple, j'ai pris + simple :)

Reply

Marsh Posté le 25-04-2002 à 15:29:16   

Reply

Marsh Posté le 25-04-2002 à 15:36:45    

ok thx [:draculax]
 
Et c'est koi ton moyen plus facile ?


---------------
Super.
Reply

Marsh Posté le 25-04-2002 à 15:40:02    

Godbout a écrit a écrit :

ok thx [:draculax]
 
Et c'est koi ton moyen plus facile ?  




sablotron, extension a rajouter au php.
tu veux que je retrouve le lien?
j'ai ossi un descriptif des 4 solutions pour php (dont le DOM)

Reply

Marsh Posté le 25-04-2002 à 15:52:15    

arf ouaip mais moi ce sera pas a faire avec du php :/
A la base mon prog c'est du C++, et j'exporte en xml.
Maintenant j'aimerais bien pouvoir lire mon fichier comme une base de données et foutre ce que je recupere dans une struct.
Ca ira pas.
Merci quand meme.


---------------
Super.
Reply

Marsh Posté le 25-04-2002 à 15:56:59    

va falloir faire chauffer google :)
ca se trouve forcement sur un tutorial
bonne chance...

Reply

Marsh Posté le 25-04-2002 à 16:11:20    

ca a l'air po mal:
http://www.xml.com/pub/a/1999/11/cplus/
SAX ou DOM

Reply

Marsh Posté le 25-04-2002 à 16:14:15    

ok thx.
J'suis sur un tut sur la msdn, je vaix jeter un coup d'oeil a l'autre apres :)


---------------
Super.
Reply

Marsh Posté le 26-04-2002 à 11:08:55    

j'ai lu les 4 pages et ca m'avance pas bcp :sweat:


---------------
Super.
Reply

Marsh Posté le 26-04-2002 à 11:15:44    

:sweat: aille...

Reply

Marsh Posté le 26-04-2002 à 11:25:17    

J'ai choppe des liens, j'vais me renseigner un peu plus sur DOM.


---------------
Super.
Reply

Marsh Posté le 29-04-2002 à 14:18:13    

up up up  
 
c'est chaud :sweat:


---------------
Super.
Reply

Marsh Posté le 29-04-2002 à 17:21:43    

up
 
Personne n'utilise SAX ou DOM ??


---------------
Super.
Reply

Marsh Posté le 29-04-2002 à 17:27:31    

viiz a écrit a écrit :

 
 
Bah si mais pas en C++ :fuck:  




 
+1 ;)
 
 
(mais si tu peux créer des activex/objets COM en c++, y'a surement moyen d'utiliser MSXML... si tu es sous Windows, of course...)

 

[jfdsdjhfuetppo]--Message édité par JWhy le 29-04-2002 à 17:27:53--[/jfdsdjhfuetppo]


---------------
www.alliancefrancophone.org ... Home is where the heart is
Reply

Marsh Posté le 29-04-2002 à 17:28:55    

tu veux juste lire un fichier xml ? tu peux utiliser un parser comme expat, qui te permettra de récupérer les balises + leurs paramètres + le contenu.  
 
y'a d'autres parsers, comme tiny xml (chercher sous google avec c++), etc.
 
tu peux aussi utiliser le parser de microsoft (msxml) s'il est dispo sur ta machine (utiliser au moins la version 3 je crois).

Reply

Marsh Posté le 29-04-2002 à 17:31:59    

Godbout a écrit a écrit :

Ouais donc en gros faut que je me tape une fonction qui decortique tout ca koi :/
Je pensais qu'avec le xml y avait moyen de recuperer tout ca dans une struct puisque c'est le but de ce language (de separer struct et style)  




 
Ben moi j'ai fait des fonctions, mais je ne te les files que si tu es gentil !!!

Code :
  1. int XML_lire_tag(char* chaine, int* position, char* tag);
  2. int XML_lire_valeur(char* chaine, int* position, char* tag, int* debut_valeur,int* longueur);
  3. int XML_lire_tag_fin(char* chaine, int* position, char* tag);


 
la premiere lit le premier TAG "<$tag>" dont la valeur doit être $tag.
la deuxieme lit la valeur située entre "<$tag>" et "</$tag>" en vérifiant qe  "</$tag>" et bien le bon TAG.
La dernière vérifie simplement que le tag fermant  "</$tag>" est bien là.
 
Donc les trois fonctions travaille sur un buffer => chaine qui contient l'inégralité du message xml et se termine par '\0'. Position est la position de lecture actuelle (pointe sur le '>' de la dernière balise lue (en cas de succes !!!). et la fonction qui lit la valeur retourne la position de début de la valeur ainsi que sa longueur pour ensuite que ton prog puise l'extraire en faire la conversion necessaire si c'est un entier ou autre ...
 
Pour le source, "Tu suces ?"

Reply

Marsh Posté le 30-04-2002 à 10:46:51    

youdontcare a écrit a écrit :

tu veux juste lire un fichier xml ? tu peux utiliser un parser comme expat, qui te permettra de récupérer les balises + leurs paramètres + le contenu.  
 
y'a d'autres parsers, comme tiny xml (chercher sous google avec c++), etc.
 
tu peux aussi utiliser le parser de microsoft (msxml) s'il est dispo sur ta machine (utiliser au moins la version 3 je crois).  




 
Ben en fait faudrait que je cree un fichier xml, mais aussi que je puisse recuperer les donnees d'un fichier xml. Puisque le xml est en fait comme une bdd, il devrait etre possible de recuperer les donnees.
 
Je vais jeter un oeil a tiny et expat thx :)


---------------
Super.
Reply

Marsh Posté le 30-04-2002 à 10:47:19    

DarkOli a écrit a écrit :

 
 
Ben moi j'ai fait des fonctions, mais je ne te les files que si tu es gentil !!!

Code :
  1. int XML_lire_tag(char* chaine, int* position, char* tag);
  2. int XML_lire_valeur(char* chaine, int* position, char* tag, int* debut_valeur,int* longueur);
  3. int XML_lire_tag_fin(char* chaine, int* position, char* tag);


 
la premiere lit le premier TAG "<$tag>" dont la valeur doit être $tag.
la deuxieme lit la valeur située entre "<$tag>" et "</$tag>" en vérifiant qe  "</$tag>" et bien le bon TAG.
La dernière vérifie simplement que le tag fermant  "</$tag>" est bien là.
 
Donc les trois fonctions travaille sur un buffer => chaine qui contient l'inégralité du message xml et se termine par '\0'. Position est la position de lecture actuelle (pointe sur le '>' de la dernière balise lue (en cas de succes !!!). et la fonction qui lit la valeur retourne la position de début de la valeur ainsi que sa longueur pour ensuite que ton prog puise l'extraire en faire la conversion necessaire si c'est un entier ou autre ...
 
Pour le source, "Tu suces ?"




 
[:pipe] :D


---------------
Super.
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

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