XML之DOM解析
来源:互联网 发布:银行数据录入员累吗 编辑:程序博客网 时间:2024/05/22 14:20
DOM解析代码:
import java.io.IOException;import javax.xml.parsers.DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import javax.xml.parsers.ParserConfigurationException;import org.w3c.dom.Document;import org.w3c.dom.NamedNodeMap;import org.w3c.dom.Node;import org.w3c.dom.NodeList;import org.xml.sax.SAXException;public class DOMTest {public static void main(String[] args) {//获取DocumentBuilderFactory工厂DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();try {//获取DocumentBuilder解析器对象DocumentBuilder db = dbf.newDocumentBuilder();//调用对象的parse()方法,返回Document对象Document document=db.parse("book.xml");//获取book节点的集合NodeList bookList = document.getElementsByTagName("book");//获取长度打印出来,多少个book节点System.out.println("xml中有book节点:"+bookList.getLength()+"个");for(int i =0;i<bookList.getLength();i++){//通过item()方法获取book节点Node book = bookList.item(i);//遍历book节点的所有属性NamedNodeMap nnm = book.getAttributes();System.out.println("-----------第"+(i+1)+"本书开始遍历-------");//遍历book节点的属性for(int j=0;j<nnm.getLength();j++){//item()获取属性Node node = nnm.item(j);System.out.println(node.getNodeName()+":"+node.getNodeValue());//解析book节点的子节点NodeList childNodes = book.getChildNodes();//子节点的遍历for(int k=0;k<childNodes.getLength();k++){//判断text类型的node 和 element类型的nodeif(childNodes.item(k).getNodeType()==Node.ELEMENT_NODE){//打印element类型的node的名字和值System.out.println("子节点名:"+childNodes.item(k).getNodeName()+"---值:"+childNodes.item(k).getFirstChild().getNodeValue());}}}}} catch (ParserConfigurationException e) {// TODO Auto-generated catch blocke.printStackTrace();}catch (SAXException e) {// TODO Auto-generated catch blocke.printStackTrace();} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}
xml文件:
<?xml version="1.0" encoding="UTF-8"?><books><book id="1"><name>厚黑学</name><price>45</price></book><book id="2"><name>做人不要太老实</name><author>水中鱼</author></book><book id="3"><name>心理学</name><author>周光宇</author><price>23</price></book></books>
打印结果:
阅读全文
0 0
- 解析xml之--DOM
- xml解析之Dom
- XML解析之 DOM
- XML解析之Dom
- XML解析之DOM
- XML解析之Dom
- XML解析之DOM
- 解析XML之DOM
- xml之dom解析
- xml解析之dom
- XML之DOM解析
- xml解析之DOM
- XML解析之dom
- XML解析之DOM
- XML之DOM解析
- XML之DOM解析
- XML之DOM解析
- xml之DOM解析
- 作为一名运维人,应该去学习了解的知识
- Google 官方应用架构的最佳实践指南
- 【Linux】手动安装nvidia显卡驱动 ---- Ubuntu 14.04
- java后台随机生成一个数
- 负载均衡详解(4)
- XML之DOM解析
- python3实现《机器学习实战》遇到的问题:range函数
- The required Server component failed to start so Tomcat is unable to start问题解决
- 读入优化新姿势——学习笔记
- iOS开发随手笔记
- 解决apache/nginx做反向代理导致request.getServerName()外网环境获取不到代理地址(或域名)的问题
- MATLAB 线性方程组求解
- 浪潮笔试题
- SDUT 3800 离散题目6