Java讀取XML文件(1)

Java讀取XML文件(1)

ReadXml.java

package Read;

import java.io.IOException;
import java.util.ArrayList;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;

//------------------------------------------------
//----------@author River(趙振江)2015-4-22------------
//------------------------------------------------
public class ReadXml {
    public Document loadXml(String file) {
        DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
        try {
            DocumentBuilder db = dbf.newDocumentBuilder();
            Document document = db.parse(file);
            return document;

        } catch (ParserConfigurationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return null;

    }


    public ArrayList<String> read(Node node) {
        ArrayList<String> arrList = new ArrayList<String>();
        return read(node, arrList);
    }

    private ArrayList<String> read(Node node, ArrayList<String> arrList) {
        if (node.getNodeType() == node.ELEMENT_NODE)
            arrList.add(node.getNodeName());
        NodeList list = node.getChildNodes();
        for (int i = 0; i < list.getLength(); i++) {
            read(list.item(i), arrList);
        }
        return arrList;
    }

    public static void main(String[] args) {
        ReadXml readXml = new ReadXml();
        Document doc = readXml.loadXml("class.xml");
        ArrayList<String> list = readXml.read(doc);
        for (String str : list) {
            System.out.println(str);
        }
    }

}

class.xml

<?xml version="1.0" encoding="utf-8"?>
<班級>
    <學生 id="a01">
        <名字>周星馳</名字>
        <年齡>23</年齡>
        <介紹>學習刻苦</介紹>
    </學生>
    <學生 id="a02">>
        <名字>林青霞</名字>
         <年齡>32</年齡>
        <介紹>是一個好學生</介紹>
    </學生>
        <學生2 id="a03">>
        <名字>林青霞</名字>
         <年齡>32</年齡>
        <介紹>是一個好學生</介紹>
    </學生2>
</班級>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章