java根据xml节点选择数据
上面有group和score两个节点,我想选择group为1的所有score来处理,group为2的不处理,使用java改如何编写。谢谢大神。 --------------------编程问答-------------------- 除 --------------------编程问答-------------------- 结构定好了。其实就是循环a的所有子节点,判断子节点的子节点的值。
参考常见问题解析:http://blog.csdn.net/withiter/article/details/17223813 --------------------编程问答-------------------- 这个用dom4j.jar里面的xpath很简单的,自己找个例子。 --------------------编程问答-------------------- 循环节点判断。 --------------------编程问答--------------------
package pars.xml;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Iterator;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.xpath.XPath;
public class PaseJdom {
private static final String ATTRIBUTE = "1";
public static void main(String[] args) throws JDOMException, IOException {
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build(new InputStreamReader
(PaseJdom.class.getClassLoader().getResourceAsStream("test.xml")));
List elements = XPath.selectNodes(doc, "a/detail");
for (Iterator i = elements.iterator();i.hasNext();) {
Element element = (Element) i.next();
if (element.getChild("group").getTextTrim().equals(ATTRIBUTE)) {
System.out.println(element.getChild("score").getTextTrim()+"----"); //此处编写业务逻辑
}
}
}
}
补充:Java , Java相关