2016-03-01 110 views
1

我在java中使用Xerces xml库。java xml,创建自我结束标记

我能够像创建一个元素:

Element myElement = doc.createElement("element");

这将导致<element></element>

我该如何创建一个会导致自动关闭标签的元素?

<element/>

感谢。

回答

0

例如你,如果你需要创建一个XML像

xml 

<?xml version="1.0" encoding="UTF-8"?> 
<RootElement> 
    <element /> 
</RootElement> 

,我们可以有我们像下面的Java代码片断。

import java.io.StringWriter; 

import javax.xml.parsers.DocumentBuilder; 
import javax.xml.parsers.DocumentBuilderFactory; 
import javax.xml.parsers.ParserConfigurationException; 
import javax.xml.transform.Transformer; 
import javax.xml.transform.TransformerException; 
import javax.xml.transform.TransformerFactory; 
import javax.xml.transform.dom.DOMSource; 
import javax.xml.transform.stream.StreamResult; 

import org.w3c.dom.Document; 
import org.w3c.dom.Element; 

public class XmlTransformer{ 

    public static void main(String args[]) { 
     String xml = ""; 
     try { 
      DocumentBuilderFactory docFactory = DocumentBuilderFactory 
        .newInstance(); 
      DocumentBuilder docBuilder = docFactory.newDocumentBuilder(); 
      Document doc = docBuilder.newDocument(); 
      Element rootElement = doc.createElement("RootElement"); 
      doc.appendChild(rootElement); 

      Element myElement = doc.createElement("element"); 
      rootElement.appendChild(myElement); 
      TransformerFactory transformerFactory = TransformerFactory 
        .newInstance(); 
      Transformer transformer = transformerFactory.newTransformer(); 
      DOMSource source = new DOMSource(doc); 
      StringWriter writer = new StringWriter(); 
      StreamResult result = new StreamResult(writer); 

      transformer.transform(source, result); 
      xml = writer.toString(); 
      System.out.println(" xml \n \n " +xml); 
     } catch (ParserConfigurationException pce) { 
      pce.printStackTrace(); 
     } catch (TransformerException tfe) { 
      tfe.printStackTrace(); 
     } 
    } 

}