j'ai un String qui contient du xml et je veus le transformer en un arbre DOM, comment je fais?
je sais qu'il y a des outils qui permettent de faire ca mais lesquels xerces, non?
j'ai un String qui contient du xml et je veus le transformer en un arbre DOM, comment je fais?
je sais qu'il y a des outils qui permettent de faire ca mais lesquels xerces, non?
Salut,Envoyé par questionneuse
oui xerces peut le faire, il y a aussi dom4j un peu plus léger. Par contre il faudra ruser vu que tu manipules une chaîne de caractères au lieu d'un fichier. En général , les parseur DOM s'attendent à accueillir une url qui pointe vers un fichier XML.
Je suppose qu'il y a des méthodes pour parser directement un InputStream ou quelque chose comme ça.
Tu utilises un parseur DOMj'ai un String qui contient du xml et je veus le transformer en un arbre DOM, comment je fais?
Pour parser directement une chaine de caractère, le mieux est de l'encapsuler dans un InputStream que tu passes au parser:
Attention ce n'est qu'un exemple, il faut y rajouter la gestion des exceptions, la fermeture des streams, etc ...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 DocumentBuilder documentBuilder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); Document document = documentBuilder.parse(new InputSource( new StringReader(str) ) );
Pour ce qui est du parseur, il en existe plusieurs possibles, dont Xerces, mais je ne saurais trop te conseiller d'utiliser JAXP afin de t'abstraire complètement de l'implémentation du parseur. Ainsi il te sera possible de remplacer ton parseur par un autre à l'exécution sans modification de ton code.
Jacques Desmazières
[/i]
y a pas un moyen pour afficher les noeuds du dom parceque la je fais des system.out.println sur les node et ca m'affiche n'importe quoi donc si y avait une méthode qui me permettait d'afficher tous les noeuds directement de l'arbre dom, ca m'arrangerait bien ..
Attention, il faut détecter le type de node avant d'afficher quoi que ce soit. Je te conseille un tutoriel de Sun. Il t'aidera sans doute à comprendre les mécanismes de DOM.Envoyé par questionneuse
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager