簡體   English   中英

使用XPath解析xml文檔。 為什么要加一個 <xml tag as a header> 在結果?

[英]Parsing with XPath a xml document. Why add a <xml tag as a header> in the result?

我先搜索谷歌,然后發現許多關於如何用xpath解析xml文檔的結果。 我已解析它但想要在String中轉換NODELIST並且我已經為它創建了一個方法:

private String processResult(Document responseDocument) throws XPathExpressionException,       TransformerException {
   NodeList soaphead = responseDocument.getElementsByTagName("xmlTagToTrasform"); 
   StringWriter sw = new StringWriter(); 
   Transformer serializer = TransformerFactory.newInstance().newTransformer(); 
   serializer.transform(new DOMSource(soaphead.item(0)), new StreamResult(sw)); 
   String result = sw.toString();
   return result;
}

這種方法工作正常,但變換器在結果的標題中添加了一個<?xml version="1.0" encoding="UTF-8"?> ,我不希望這樣。 這是該方法的結果:

<?xml version="1.0" encoding="UTF-8"?>
<xmlTagToTrasform>
  <xmlTagToTrasform2>
        .
        .
        .
        .
  </xmlTagToTrasform2>
</xmlTagToTrasform>

在調用transform之前,可以將變換器配置為不輸出XML聲明:

serializer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");

XML是一種標記語言,每個xml文檔都在頂部有這一行來指定版本和編碼類型。 有這個是瘋了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM