码迷,mamicode.com
首页 > 其他好文 > 详细

Dom解析xml

时间:2017-12-15 13:33:36      阅读:119      评论:0      收藏:0      [点我收藏+]

标签:str   string   out   exception   add   解析xml   builder   list   内容   

1.假设,现在我想用DOM实现读取该文件,并输出xml中元素的信息

 

E:\dom.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<xml>
<person>
<name>张三</name>
<age>23</age>
<add>北京</add>
</person>

<person>
<name>李四</name>
<age>24</age>
<add>西安</add>
</person>

<person>
<name>王五</name>
<age>25</age>
<add>上海</add>
</person>
</xml>

package com.cissst.dom1;

import java.io.File;
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.Element;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

public class DomTest {
    public static void main(String[] args){
        //得到DocumentBuilderFactory的一个工厂对象
        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
        
        DocumentBuilder docuBuilder = null;
        Document document = null;
        try {
            //用工厂对象得到一个DocumentBuilder对象
            docuBuilder = factory.newDocumentBuilder();
            //设置要访问的xml文件路径
            document = docuBuilder.parse("E:"+File.separator+"dom.xml");
            //获取名称为name元素的节点内容
            NodeList nl = document.getElementsByTagName("person");
            for(int i=0;i<nl.getLength();i++){
                //循环为每一个名字为person的节点转换成Element并输出元素的子节点中的内容
                Element element = (Element)nl.item(i);
                System.out.print(element.getElementsByTagName("name").item(0).getFirstChild().getNodeValue());
                System.out.print(element.getElementsByTagName("age").item(0).getFirstChild().getNodeValue());
                System.out.println(element.getElementsByTagName("add").item(0).getFirstChild().getNodeValue());
            }
        } catch (ParserConfigurationException e) {
            e.printStackTrace();
        } catch (SAXException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        
        
    }
}

 

Dom解析xml

标签:str   string   out   exception   add   解析xml   builder   list   内容   

原文地址:http://www.cnblogs.com/pecool/p/8042375.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!