String result="<a>
<b id="1" name="sda" age="23"></b>
<b id="2" name="sss" age="2"></b>
<b id="3" name="sdf" age="45"></b>
</a>";
请问各位大神用dom4j还是jdom解析这个字符串result,最好有代码演示,谢谢!
------最佳解决方案--------------------------------------------------------
个人喜欢Dom4j
import org.dom4j.*;
import org.dom4j.io.SAXReader;
import java.util.List;
public class XmlDemo {
public static void main(String[] args) throws Exception {
String str = "<a>" +
"<b id=\"1\" name=\"sda\" age=\"23\"></b>" +
"<b id=\"2\" name=\"sss\" age=\"2\"></b>" +
"<b id=\"3\" name=\"sdf\" age=\"45\"></b>" +
"</a>";
Document doc = DocumentHelper.parseText(str);
XPath xpathSelector = DocumentHelper.createXPath("//b");
List nodes = xpathSelector.selectNodes(doc);
for (Object obj : nodes) {
Element n = (Element) obj;
String id = n.attribute("id").getText();
String name = n.attribute("name").getText();
String age = n.attribute("age").getText();
System.out.println("Id: " + id + ", Name: " + name + ", Age: " + age);
}
}
}
------其他解决方案--------------------------------------------------------
你这字符串貌似不对吧 ^^
------其他解决方案--------------------------------------------------------
dom4j经常看到
------其他解决方案--------------------------------------------------------
我的这个result字符串是某个方法的返回值,2楼好像把这个字符串拆开了,而且 XPath xpathSelector = DocumentHelper.createXPath("//b");是什么意思?第二个节点的意思吗?
------其他解决方案--------------------------------------------------------
用dom4j吧