XML解析之jdom解析

   jdom解析:
        (1)使用JDOM首先要指定使用什麼解析器。如:
    SAXBuilder builder=new SAXBuilder(); 這表示使用的是默認的解析器
(2)得到Document,我們以後要進行的所有操作都是對這個Document操作的:
    InputStream input = new FileInputStream("student.xml");
    Document document = builder.build(input);// 獲得文檔對象
(3)得到根元素:
    Element books=doc.getRootElement();
    在JDOM中所有的節點(DOM中的概念)都是一個org.jdom.Element類,當然他的子節點也是一個org.jdom.Element類。
(4)得到元素(節點)的集合:
     List booklist=books.getChildren("student");
       

package bean;
import java.io.FileInputStream;
import java.io.InputStream;
import java.util.List;
import org.jdom.Document;
import org.jdom.Element;
import org.jdom.input.SAXBuilder;
/**
 *  jdom解析xml文件
 * @author tingiting123
 *
 */
public class XmlParse2 {
    public  void xmlParse() throws Exception {
        SAXBuilder builder = new SAXBuilder();//獲取解析器
        InputStream input = new FileInputStream("student.xml");//將配置文件轉換爲字節流
        Document document = builder.build(input);// 獲得文檔對象
        Element root = document.getRootElement();// 獲得根節點
        List<Element> list = root.getChildren(); //獲取根節點下的所有子節點
        for (Element e : list) {
            System.out.println("id=" + e.getAttributeValue("id"));
            System.out.println("username=" + e.getChildText("username")+"\t"+"password=" + e.getChildText("password"));
        }
    }
    public static  void main(String ars[]) throws Exception {
        XmlParse2 xp = new XmlParse2();
        xp.xmlParse();// 解析XML
    }
}

-------------------------------------------------------------------------------------------------------------------------

student.xml

1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="UTF-8"?>
<persons>
    <person id="1">
    <username>張三</username>
    <password>123123</password>
    </person>
    <person id="2">
    <username>李四</username>
    <password>123456yy</password>
    </person>
</persons>


----------------------------------------------------
運行結果:
id=1
username=張三 password=123123
id=2
username=李四 password=123456yy


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