在做第三方接口测试的时候很容遇到接口返回的数据类型是xml串。把我解决问题的方法记录下来,供参考。
需要引入dom4j的jar包:
package com.test;
import java.util.List;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
public class XmlParse {
private static String XmlString = "<response><error>error test</error><message>message node1 test</message><message>message node2 test</message></response>";
public static void main(String[] args) throws DocumentException{
List<Element> messagelists = getElements();
Element error = getElement();
//遍历打印message节点中的内容
for(Element x : messagelists ){
System.out.println(x.getTextTrim());
}
//打印error节点中的内容
System.out.println(error.getTextTrim());
}
/**
* 获取message所有节点
* @return 返回message节点list
*/
public static List<Element> getElements() throws DocumentException{
Document document = DocumentHelper.parseText(XmlString);
Element rootElement = document.getRootElement();
List<Element> nodeElements = rootElement.elements("message");
return nodeElements;
}
/**
* 获取error节点
* @return 返回error节点
*/
public static Element getElement() throws DocumentException{
Document document = DocumentHelper.parseText(XmlString);
Element rootElement = document.getRootElement();
Element nodeElement = rootElement.element("error");
return nodeElement;
}
}
原文:http://landm.blog.51cto.com/7363581/1734770