package cn.ujjboy.answer.csdn;import java.io.IOException;
import java.util.List;import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;public class ReadXML1 { public static void main(String[] args) throws JDOMException, IOException {
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build("d:\\d.xml");
Element root = doc.getRootElement();
List list = root.getChildren();// 得到根节点NewDataSet
if (list == null || list.size() == 0)
System.out.println("空文件");
for (int i = 0; i < list.size(); i++) {
Element FVDL = (Element) list.get(i);// 得到fvdl
List list2 = FVDL.getChildren();
for (int j = 0; j < list2.size(); j++) {
Element Vulnerabilities = (Element) list2.get(j);
List list3 = Vulnerabilities.getChildren();// 得到Vulnerabilities
for (int k = 0; k < list3.size(); k++) {
Element Vulnerability = (Element) list3.get(k);
List list4 = Vulnerability.getChildren();// 得到Vulnerability
for (int l = 0; l < list4.size(); l++) {
Element ClassInfo = (Element) list4.get(l);// 得到ClassInfo
List list5 = ClassInfo.getChildren();
for (int m = 0; m < list5.size(); m++) {
Element ClassID = (Element) list5.get(m);// 得到ClassID同级的节点
if ("ClassID".equals(ClassID.getName()))// 如果名字相同也可以加上namespace比较
System.out.println(ClassID.getText());
}
}
}
}
}
}
}
import java.util.List;import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;public class ReadXML1 { public static void main(String[] args) throws JDOMException, IOException {
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build("d:\\d.xml");
Element root = doc.getRootElement();
List list = root.getChildren();// 得到根节点NewDataSet
if (list == null || list.size() == 0)
System.out.println("空文件");
for (int i = 0; i < list.size(); i++) {
Element FVDL = (Element) list.get(i);// 得到fvdl
List list2 = FVDL.getChildren();
for (int j = 0; j < list2.size(); j++) {
Element Vulnerabilities = (Element) list2.get(j);
List list3 = Vulnerabilities.getChildren();// 得到Vulnerabilities
for (int k = 0; k < list3.size(); k++) {
Element Vulnerability = (Element) list3.get(k);
List list4 = Vulnerability.getChildren();// 得到Vulnerability
for (int l = 0; l < list4.size(); l++) {
Element ClassInfo = (Element) list4.get(l);// 得到ClassInfo
List list5 = ClassInfo.getChildren();
for (int m = 0; m < list5.size(); m++) {
Element ClassID = (Element) list5.get(m);// 得到ClassID同级的节点
if ("ClassID".equals(ClassID.getName()))// 如果名字相同也可以加上namespace比较
System.out.println(ClassID.getText());
}
}
}
}
}
}
}
解决方案 »
- EJB + jboss开发 java.lang.NoSuchMethodError
- element同时包含文本和子节点,如何将子节点替换成文本
- 请问Spring的Ioc到底是怎么回事呢?能举例说明下吗?实战中是怎么应用的?
- hibernate : Not Supported for DML Operation
- 想要从事JAVA方向的工作。要从哪里学起呢?
- 那位大哥指点一下,struts + hibernate 在线等待.....
- java主机常见问题(jsp版本)
- 求救!在JSP中访问entityBean出错!!
- 请问struts-config.xml怎样配置?
- 是不是EJB的主接口不用写了?只写一个HOME接口、Remote接口、实现类就可以了。是EJB的新规范吗?
- 新的算法再现CSDN
- 有个奇怪的想法啊,能不能把JSP程序部署到IIS服务器上面去啊
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.JDOMException;
import org.jdom.input.SAXBuilder;
import org.jdom.xpath.XPath;public class ReadXML2 { public static void main(String[] args) throws JDOMException, IOException {
SAXBuilder sb = new SAXBuilder();
Document doc = sb.build("d:\\d.xml");
Element root = doc.getRootElement();
// XPath xpath = XPath.newInstance("//Kingdom"); 没有namespace情况
XPath xpath = XPath.newInstance("//ns:Kingdom");
xpath.addNamespace("ns", "xmlns://www.fortifysoftware.com/schema/fvdl");
Element ele = (Element) xpath.selectSingleNode(doc);
System.out.println(ele.getText());
}
}BTW: 你的namespace 怎么是这样子写的呢?1.一般是这样子写的xmlns:ans="http://www.fortifysoftware.com/schema/fvdl" 而且ans这个不会以xml打头2.结果也该是这样子啊
<NewDataSet xmlns:ans="http://www.fortifysoftware.com/schema/fvdl">
<ans:FVDL>
<ans:CreatedTS date="2008-08-24" time="10:41:13" />
<ans:Vulnerabilities>
.....