/**
* Xml解析为Map
*
* @param xmlString
* @return
*/
public static Map<String, String> xml2Map(String xmlString) {
Map<String, String> map = null;
try {
Document document = DocumentHelper.parseText(xmlString);
Element rootElement = document.getRootElement();
map = new HashMap<String, String>();
Element element = null;
for (Iterator<Element> i = rootElement.elementIterator(); i.hasNext();) {
element = i.next();
map.put(element.getName().trim(), element.getTextTrim());
for (Iterator<Element> j = element.elementIterator(); j.hasNext();) {
element = j.next();
map.put(element.getName().trim(), element.getTextTrim());
}
}
} catch (Exception e) {
e.printStackTrace();
map = null;
}
return map;
}
//高阳捷迅xml解析
public static Map<String, String> xml2MapJieXun(String xmlString) {
Map<String, String> map = null;
try {
Document document = DocumentHelper.parseText(xmlString);
Element rootElement = document.getRootElement();
System.out.println(rootElement);
map = new HashMap<String, String>();
Element element = null;
for (Iterator<Element> i = rootElement.elementIterator(); i.hasNext();) {
element = i.next();
System.out.println(element);
for (Iterator<Element> j = element.elementIterator(); j.hasNext();) {
element = j.next();
System.out.println(element);
map.put(element.attributeValue("name").toString(),
element.attributeValue(
"value"
).toString());
}
}
} catch (Exception e) {
e.printStackTrace();
map = null;
}
return map;
}
public static void main(String[] args) {
String xmlStr=
"<?xml version=\"1.0\" encoding=\"utf-8\"?>"
+
"<response>" +
"<request_status>109</request_status>" +
"<request_fail_code>100089</request_fail_code>" +
"<request_fail_reason>陆地上的开发还是开发商</request_fail_reason>" +
"</response>";
//高阳捷迅xml字符串解析形式
String stringTeString="<?xml version=\"1.0\" encoding=\"GB2312\"?>"+
"<fill version=\"1.0\"><items>"+
"<item name=\"prodid\" value=\"8096\"/>"+
"<item name=\"orderid\" value=\"PD12160428120635002\"/>"+
"<item name=\"tranid\" value=\"\"/>"+
"<item name=\"resultno\" value=\"1011\"/>"+
"<item name=\"mark\" value=\"\"/>"+
"<item name=\"verifystring\" value=\"5b18d3429ac438dd52c37f3c2a7413d9\"/>"
+"</items></fill>";
Map xmlMap = xml2Map(xmlStr);
System.out.println(xmlMap);
}
注意:获得某个节点里的name和value值 如
<item name=\"prodid\" value=\"8096\"/>
你可以以这样的方式:element.attributeValue(
"name"
).toString(),
element.attributeValue(
"value"
).toString()
来获取 "
prodid" 和 "
8096
"