[英]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.