Mega Code Archive

 
Categories / Java Tutorial / XML
 

Converting an XML Fragment into a DOM Fragment

import java.io.File; import java.io.StringReader; import javax.xml.parsers.DocumentBuilderFactory; import org.w3c.dom.Document; import org.w3c.dom.DocumentFragment; import org.w3c.dom.Element; import org.w3c.dom.Node; import org.xml.sax.InputSource; public class Main {   public static void main(String[] argv) throws Exception {     DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();     factory.setValidating(true);     Document doc = factory.newDocumentBuilder().parse(new File("infilename.xml"));     String fragment = "<fragment>aaa</fragment>";     factory = DocumentBuilderFactory.newInstance();     Document d = factory.newDocumentBuilder().parse(new InputSource(new StringReader(fragment)));     Node node = doc.importNode(d.getDocumentElement(), true);     DocumentFragment docfrag = doc.createDocumentFragment();     while (node.hasChildNodes()) {       docfrag.appendChild(node.removeChild(node.getFirstChild()));     }     Element element = doc.getDocumentElement();     element.appendChild(docfrag);   } }