java获取xml节点属性

<?xmlversion="1.0"?>-<wuxialist>-<txtbook><name>AAAA</name><author>aaa</author></txtb... <?xml version="1.0"?>
-<wuxialist> -<txtbook> <name>AAAA</name> <author>aaa</author> </txtbook> </wuxialist>
要的结果:name=AAA
author=aaa
展开
 我来答
liuyang054
推荐于2016-09-15 · TA获得超过9093个赞
知道大有可为答主
回答量:5317
采纳率:78%
帮助的人:5273万
展开全部
/**
 * xml文件解析
 * @author young
 *
 */
import java.io.*;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

public class XmlExam {
public static void main(String args[]) {
Element element = null;
// 可以使用绝对路劲
File f = new File("xml1.xml");
// documentBuilder为抽象不能直接实例化(将XML文件转换为DOM文件)
DocumentBuilder db = null;
DocumentBuilderFactory dbf = null;
try {
// 返回documentBuilderFactory对象
dbf = DocumentBuilderFactory.newInstance();
// 返回db对象用documentBuilderFatory对象获得返回documentBuildr对象
db = dbf.newDocumentBuilder();
// 得到一个DOM并返回给document对象
Document dt = db.parse(f);
// 得到一个elment根元素
element = dt.getDocumentElement();
// 获得根节点
System.out.println("根元素:" + element.getNodeName());
// 获得根元素下的子节点
NodeList childNodes = element.getChildNodes();
// 遍历这些子节点
for (int i = 0; i < childNodes.getLength(); i++) {
// 获得每个对应位置i的结点
Node node1 = childNodes.item(i);
if ("txtbook".equals(node1.getNodeName())) {
System.out.println("\r\n找到一个子节点: "
+ node1.getNodeName() + ". ");
// 获得<txtbook>下的节点
NodeList nodeDetail = node1.getChildNodes();
// 遍历<txtbook>下的节点
for (int j = 0; j < nodeDetail.getLength(); j++) {
// 获得<wuxialist>元素每一个节点
Node detail = nodeDetail.item(j);
if ("name".equals(detail.getNodeName())) // 输出code
System.out
.println("name= " + detail.getTextContent());
else if ("author".equals(detail.getNodeName())) // 输出pass
System.out
.println("author= " + detail.getTextContent());

}
}
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

这就是用java来解析xml文件。  要在java代码中导入xml解析的jar包。

4个jar包为:commons-beanutils.jar

commons-collections.jar

commons-digester.jar

commons-logging.jar

dom4j-1.6.1.jar


输出结果为:

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式