je suis besoin de convertir un fichier XML construire avec dom4j le document w3c et n'ont pas la moindre idée sur la façon dont le faire ...convertir dom4j docment le document W3c
Répondre
Je suppose que vous voulez aller de :
org.dom4j.Document
Pour:
org.w3c.dom.Document
De l'dom4j quick start guide:
Document document = ...;
String text = document.asXML();
D'un JavaRanch example sur la corde au document:
public static Document stringToDom(String xmlSource)
throws SAXException, ParserConfigurationException, IOException {
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
return builder.parse(new InputSource(new StringReader(xmlSource)));
}
Combine 2 et vous devriez avoir ce que vous avez besoin.
Si vous avez des documents volumineux, vous souhaiterez peut-être éviter de sérialiser votre document au format texte pour des raisons de performances. Dans ce cas, il est préférable d'utiliser directement les événements SAX pour effectuer la transformation:
private static final TransformerFactory transformerFactory =
TransformerFactory.newInstance();
public static org.w3c.dom.Document toW3c(org.dom4j.Document dom4jdoc)
throws TransformerException {
SAXSource source = new DocumentSource(dom4jdoc);
DOMResult result = new DOMResult();
Transformer transformer = transformerFactory.newTransformer();
transformer.transform(source, result);
return (org.w3c.dom.Document) result.getNode();
}
Merci beaucoup, cela a fonctionné magnifiquement! –
Consultez DOMWriter. Cela fonctionne pour moi:
import org.dom4j.DocumentHelper;
import org.dom4j.io.DOMWriter;
org.dom4j.Document dom4jDoc = DocumentHelper.createDocument();
org.w3c.dom.Document w3cDoc = new DOMWriter().write(dom4jDoc)
fonctionne parfaitement, merci – Anand
S'il vous plaît fournir plus de détails quant à ce que vous voulez faire, il est vraiment peu clair pour moi, au moins. – MeBigFatGuy