zoukankan      html  css  js  c++  java
  • Java 解析XML文档

    一、解析XML文档方式:

      1、DOM方式:将整个XML文档读取到内存中,按照XML文件的树状结构图进行解析。

      2、SAX方式:基于事件的解析,只需要加载XML中的部分数据,优点是,占用资源更少,内存消耗小。

      XML文档:

      

    <?xml version="1.0" encoding="UTF-8"?>
    <students>
        <student>
            <name>张三</name>
            <age>20</age>
        </student>
        <student>
            <name>李四</name>
            <age>22</age>
        </student>
        <student>
            <name>王五</name>
            <age>24</age>
        </student>
        <student>
            <name>赵六</name>
            <age>21</age>
        </student>
    </students>

    二、DOM解析方式:

    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    Document doc = db.parse("src/students.xml");
    NodeList list = doc.getElementsByTagName("student");
    for (int i = 0; i < list.getLength(); i++) {
        Node node = list.item(i);
        NodeList stulist = node.getChildNodes();
        for (int j = 0; j < stulist.getLength(); j++) {
         //在XML中会默认包含一个空元素#text,需要略过
    if (stulist.item(j).getNodeName().equals("#text")) continue; Node childnode = stulist.item(j); System.out.println(childnode.getNodeName() + ":" + childnode.getTextContent()); } }
    输出结果:
    name:张三 age:
    20 name:李四 age:22 name:王五 age:24
  • 相关阅读:
    用原生JS判断素(质)数,并找出100~1000之间的所有素(质)数
    用原生JS找出所有的水仙花数
    break、continue和return语句的区别
    用原生JS写16进制随机颜色
    JavaScript函数
    JavaScript数组
    JavaScript流程控制
    新的开始,新的历程
    异常处理
    DictionaryBase
  • 原文地址:https://www.cnblogs.com/zhengcheng/p/4279361.html
Copyright © 2011-2022 走看看