Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

utilisation de LibXml2

4 réponses
Avatar
Rim msedi
Bonjour,

Je voudrais parser un fichier XML dans mon programme C en utilisant
LibXml2. J'ai test=E9 les deux exemples existants dans le lien
http://julp.developpez.com/c/libxml2/?page=3Dsax

- 3.2.1. Stock=E9 dans un fichier
- 3.10. Mise en =9Cuvre par un exemple (sax_prix.c)

Pour le premier exemple, la compilation et l'ex=E9cution =E7=E0 marche. Mai=
s
pour le deuxi=E8me exemple, j'ai eu des messages d'erreur lors de la
compilation.
Voici les messages d'erreur:
1>------ D=E9but de la g=E9n=E9ration : Projet : SaxTest, Configuration :
Debug Win32 ------
1>=C9dition des liens en cours...
1>main.obj : error LNK2019: symbole externe non r=E9solu _strndup
r=E9f=E9renc=E9 dans la fonction _caracteres
1>main.obj : error LNK2019: symbole externe non r=E9solu _strtof
r=E9f=E9renc=E9 dans la fonction _caracteres
1>C:\SaxTest\Debug\SaxTest.exe : fatal error LNK1120: 2 externes non
r=E9solus
1>Le journal de g=E9n=E9ration a =E9t=E9 enregistr=E9 =E0 l'emplacement "fi=
le://c:
\SaxTest\SaxTest\Debug\BuildLog.htm"
1>SaxTest - 3 erreur(s), 0 avertissement(s)
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D G=E9n=E9ration : 0 a r=E9ussi, 1 a =E9chou=
=E9, 0 mis =E0 jour, 0 a =E9t=E9
ignor=E9 =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

- Quelle est la source de ces erreurs ?
- Qu'est ce que je vais ajouter et modifier dans le premier exemple
pour que je puisse extraire les informations souhait=E9es ?

- Je trouve dans ce document trois m=E9thodes pour parser un document
XML : stock=E9 dans un fichier, en memoire et sous forme d'un flux XML.

Laquelle qui me convient sachant je m'int=E9resse au temps d'ex=E9cution
le moins possible pour certains fichiers volumineux ?

Merci.

4 réponses

Avatar
marc
Rim msedi a écrit :
Bonjour,

Je voudrais parser un fichier XML dans mon programme C en utilisant
LibXml2. J'ai testé les deux exemples existants dans le lien
http://julp.developpez.com



Ces exemples ne sont pas bons et, comme on t'a dit, tu n'as pas besoin
de lib XML sous Windows : tout est fourni dans les interfaces XML de
Microsoft !
Avatar
Rim msedi
On 5 août, 15:30, marc wrote:
Rim msedi a écrit :

> Bonjour,

> Je voudrais parser un fichier XML dans mon programme C en utilisant
> LibXml2. J'ai testé les deux exemples existants dans le lien
>http://julp.developpez.com

Ces exemples ne sont pas bons et, comme on t'a dit, tu n'as pas besoin
de lib XML sous Windows : tout est fourni dans les interfaces XML de
Microsoft !



Bonjour,


- La librairie SAX2 se trouve par défaut avec Visual Studio ou bien
elle est à part ( c'est à dire il faut la télécharger, l'installer et
la configurer avec mon programme C ?

- Le code de SAX2 est en C ou C++ ?

- Pouvez me donner un exemple d'utilisation du SAX2 ?

- Pour la librairie Libxml2 (son code est en C), il y a deux méthodes
DOM et SAX.
Moi, je s'intéresse au temps d'exécution le moins possible et qui
consomme moins du mémoire.
Quelle est la méthode la plus rapide entre DOM et SAX ?

Dans mon programme C, je veux extraire une partie du fichier XML
décrit en haut. Je m'intéresse aux informations qui se trouvent au
dernier nœud :

<Concept>
<ID> 11 </ID>
<Extent>
</Extent>
<Intent>
<Attribute_Ref>d</Attribute_Ref>
<Attribute_Ref>b</Attribute_Ref>
<Attribute_Ref>c</Attribute_Ref>
<Attribute_Ref>a</Attribute_Ref>
</Intent>
<UpperCovers>
<Concept_Ref>10</Concept_Ref>
<Concept_Ref>8</Concept_Ref>
<Concept_Ref>9</Concept_Ref>
<Concept_Ref>7</Concept_Ref>
</UpperCovers>
</Concept>

Vue que la première fois que je parse un fichier XML alors je ne
comprends pas le principe de le faire comme par exemple dans la
manipulation de fichier texte. Il faut:
- tester l'existence du fichier
- ouvrir le fichier
- lire le fichier
- traitement
- fermeture.

Par analogie comment je vais lire les informations existant dans la
dernière balise <concept > </concept> de mon fichier XML ?

Merci.
Avatar
Christian ASTOR
On 16 août, 10:38, Rim msedi wrote:

- La librairie SAX2 se trouve par défaut avec Visual Studio ou bien
elle est à part ( c'est à dire il faut la télécharger, l'installe r et
la configurer avec mon programme C ?

- Le code de SAX2 est en C ou C++ ?

- Pouvez me donner un exemple d'utilisation du SAX2 ?



Faut-il le donner plusieurs fois ?....
http://groups.google.fr/group/fr.comp.os.ms-windows.programmation/msg/f00bb bb9620e821d?hl=fr
Avatar
Rim msedi
On 16 août, 18:51, Christian ASTOR wrote:
On 16 août, 10:38, Rim msedi wrote:

> - La librairie SAX2 se trouve par défaut avec Visual Studio ou bien
> elle est à part ( c'est à dire il faut la télécharger, l'instal ler et
> la configurer avec mon programme C ?

> - Le code de SAX2 est en C ou C++ ?

> - Pouvez me donner un exemple d'utilisation du SAX2 ?

Faut-il le donner plusieurs fois ?....http://groups.google.fr/group/fr.co mp.os.ms-windows.programmation/msg...



Bonsoir,

Mais le code SAX2 est en C++ et mon programme est en C.