Bonjour, je voudrais parser un fichier xml avec xerces et en afficher les noeuds. Tout simple!!!

voici le fichier xml

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
<?xml version="1.0" encoding="iso-8859-1"?>
 
<personnel>
  <person id="Big.Boss" >
    <name><family>Boss</family> <given>Big</given></name>
  </person>
  <person id="one.worker">
    <name><family>Worker</family> <given>One</given></name>
    </person>
 </personnel>
Je fais donc qq chose comme cela:
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
 
 
static const XMLCh gLS[] = { chLatin_L, chLatin_S, chNull };
DOMImplementation *impl = DOMImplementationRegistry::getDOMImplementation(gLS);
DOMBuilder        *parser = ((DOMImplementationLS*)impl)->createDOMBuilder(/*DOMImplementationLS::MODE_SYNCHRONOUS*/0, 0);
DOMElement* racine = monDocDom->getDocumentElement();
 
XERCES_STD_QUALIFIER cout << "racine : " << XMLString::transcode(racine->getTagName()) << XERCES_STD_QUALIFIER endl;
 
 
 
DOMNodeList* maListeDeNoeuds = racine->getChildNodes();
XERCES_STD_QUALIFIER cout << "nombre de noeuds : " << maListeDeNoeuds->getLength() << XERCES_STD_QUALIFIER endl;
for(unsigned int i = 0; i< maListeDeNoeuds->getLength() ;i++)
{
	XERCES_STD_QUALIFIER cout << "noeud " << i << " -> " << XMLString::transcode(maListeDeNoeuds->item(i)->getNodeName()) << "." << XERCES_STD_QUALIFIER endl;
}
Le résultat affiché est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
 
racine : personnel
nombre de noeuds : 5
noeud 0 -> #text
noeud 1 -> person
noeud 2 -> #text
noeud 3 -> person
noeud 4 -> #text
Voila, je tiens juste à remercier vivement celui qui pourra me dire d'ou sortent ces #text et comment je peux les supprimer..

Merci d'avance donc.

Seb