81,092
社区成员
发帖
与我相关
我的任务
分享
public static SortedMap<Object, Object> parseXmlToSortedMap(String xml)
throws ParserConfigurationException, IOException, SAXException {
// 这里用Dom的方式解析回包的最主要目的是防止API新增回包字段
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
InputStream is = HttpRequestUtil.getStringStream(xml);(字符串转inputstream)
org.w3c.dom.Document document = builder.parse(is);
// 获取到document里面的全部结点
org.w3c.dom.NodeList allNodes = document.getFirstChild().getChildNodes();
org.w3c.dom.Node node;
SortedMap<Object, Object> map = new TreeMap<Object, Object>();
int i = 0;
while (i < allNodes.getLength()) {
node = allNodes.item(i);
if (node instanceof org.w3c.dom.Element) {
map.put(node.getNodeName(), node.getTextContent());
}
i++;
}
return map;
}