2010-07-30 3 views
1

Est-il possible d'obtenir les nœuds enfants sous un élément/nœud XML en tant que chaîne en Java?Obtient les nœuds enfants sous la forme d'une chaîne

Ou avez-vous parcouru tout?

Merci

+0

Réponse courte: elle dépend de ce que l'API que vous utilisez pour accéder à XML. Beaucoup d'entre eux ont cette fonctionnalité comme un appel de méthode unique, beaucoup ne le font pas. S'il s'agit d'une "fonctionnalité de tueur" pour vous, et que c'est approprié, vous pouvez envisager de changer votre bibliothèque d'analyse syntaxique si nécessaire. –

Répondre

1

Eh oui, comme l'a dit Andrzej, cela dépend de la bibliothèque, par exemple, JDom a la classe XMLOutputter utile qui peut imprimer à des flux, ou comme une chaîne, ou autre chose. La plupart des bibliothèques XML puissantes auront des fonctionnalités similaires

http://www.jdom.org/docs/apidocs/index.html

4

Vous pouvez utiliser Transformer:

private String nodeToString(Node node) { 
StringWriter sw = new StringWriter(); 
try { 
    Transformer t = TransformerFactory.newInstance().newTransformer(); 
    t.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); 
    t.transform(new DOMSource(node), new StreamResult(sw)); 
} catch (TransformerException e) { 
    e.printStackTrace(); 
} 
return sw.toString(); 
} 
Questions connexes