J'ai un document XML complet dans une chaîne de caractères et que vous souhaitez un Document
objet. Google transforme toutes sortes d'ordures. Quelle est la solution la plus simple? (En Java 1.5)
Solution Grâce à Matt McMinn, j'ai décidé de cette mise en œuvre. Il a le bon niveau de souplesse en matière d'entrée et à l'exception de granularité pour moi. (Il est bon de savoir si l'erreur vient de XML mal formé - SAXException
- ou tout simplement mauvais IO - IOException
.)
public static org.w3c.dom.Document loadXMLFrom(String xml)
throws org.xml.sax.SAXException, java.io.IOException {
return loadXMLFrom(new java.io.ByteArrayInputStream(xml.getBytes()));
}
public static org.w3c.dom.Document loadXMLFrom(java.io.InputStream is)
throws org.xml.sax.SAXException, java.io.IOException {
javax.xml.parsers.DocumentBuilderFactory factory =
javax.xml.parsers.DocumentBuilderFactory.newInstance();
factory.setNamespaceAware(true);
javax.xml.parsers.DocumentBuilder builder = null;
try {
builder = factory.newDocumentBuilder();
}
catch (javax.xml.parsers.ParserConfigurationException ex) {
}
org.w3c.dom.Document doc = builder.parse(is);
is.close();
return doc;
}