1. 程式人生 > >練習用dom4j完整讀取xml檔案

練習用dom4j完整讀取xml檔案

//contact.xml
<?xml version="1.0" encoding="utf-8"?>
<contactList>
    <contact id="001">
        <name>張三</name>
        <age>20</age>
        <phone>134222223333</phone>
        <email>[email protected]</email>
        <qq>432221111</qq
>
</contact> <contact id="003"> <name>lisi</name> <age>20</age> <phone>134222225555</phone> <email>[email protected]</email> <qq>432222222</qq> </contact> </contactList>

import java.io.File;
import java.util.Iterator;
import java.util.List;
import org.dom4j.Attribute;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;

public class Tests {
    public static void main(String[] args) throws DocumentException {
        SAXReader reader = new SAXReader();// 建立一個xml解析器物件
Document doc = reader.read(new File("./src/contact.xml"));// 讀取xml文件,返回Document物件 Element rootElement = doc.getRootElement();// 獲取xml文件的根標籤 System.out.println("<" + rootElement.getName() + ">"); List<Element> list = rootElement.elements(); // 獲取所有子標籤 Iterator<Element> iterator = list.iterator();// 迭代器 while (iterator.hasNext()) { Element element = iterator.next(); System.out.print(" <" + element.getName()); Attribute attribute = element.attribute("id"); System.out.println(" " + attribute.getName() + "=\"" + attribute.getValue() + "\">"); huoqu(element); System.out.println(" </" + element.getName() + ">"); } System.out.println("</" + rootElement.getName() + ">"); } private static void huoqu(Element elements) { List<Element> list2 = elements.elements(); Iterator<Element> iterator = list2.iterator(); while (iterator.hasNext()) { Element element = iterator.next(); System.out .println(" <" + element.getName() + ">" + element.getText() + "</" + element.getName() + ">"); } } }

//Console
<contactList>
    <contact id="001">
        <name>張三</name>
        <age>20</age>
        <phone>134222223333</phone>
        <email>[email protected]</email>
        <qq>432221111</qq>
    </contact>
    <contact id="003">
        <name>lisi</name>
        <age>20</age>
        <phone>134222225555</phone>
        <email>[email protected]</email>
        <qq>432222222</qq>
    </contact>
</contactList>

相關推薦

習用dom4j完整讀取xml檔案

//contact.xml <?xml version="1.0" encoding="utf-8"?> <contactList> <contact id="00

使用dom4j四種讀取xml檔案的方法

原文地址:http://blog.163.com/chenhui_java/blog/static/172672494201092632424462/ 以下是四種讀取xml檔案的方式,每種都有自己的用處。這是我在寫日誌管理器的時候查詢到的。希望能給大家幫助 首先我們先給出一個

Dom4J讀取XML檔案時出現的connection timed out:connect Nested exception異常解決方法

最近在專案中實現一個雙資料庫的動態讀取樹形選單功能,通過了Dom4J來實現,執行過程中出現以下問題: 在本論壇查到原因為 dom4j會去拿DTD增加那些DOCTYPE的預設屬性,因此加入下面一段話即可。 解決辦法連結http://topic.csdn.ne

jdom或dom4j讀取xml檔案時如何讓dtd驗證使用本地dtd檔案或者不生效

一、寫在所有之前: 因為dom4j和jdom在這個問題上處理的方法是一模一樣的,只是一個是SAXBuilder 一個SAXReader,這裡以jdom距離,至於dom4j只需要同理替換一下就可以了。 二、問題發生的情況 當你用jdom讀取一個有 dtd驗證的xml檔案,同時

jdom 或 dom4j讀取xml檔案時如何讓dtd驗證使用本地dtd檔案或者不生效

一、寫在所有之前:因為dom4j和jdom在這個問題上處理的方法是一模一樣的,只是一個是SAXBuilder 一個SAXReader,這裡以jdom距離,至於dom4j只需要同理替換一下就可以了。二、問題發生的情況當你用jdom讀取一個有dtd驗證的xml檔案,同時你的網路是

使用DOM4J讀取XML檔案

xml 檔案: <?xml version="1.0" encoding="utf-8" ?> <Response> <e> <CLASS

使用dom4j 讀取xml檔案時的中文問題(轉)

使用dom4j 讀取xml檔案時的中文問題:(一) 在用reader.read(String filename)傳遞的是檔名的時候,遇到中文的路徑則會出錯,丟擲unknow protocol :d異常.而使用英文名則不存在該錯誤.解決辦法: 用 reader.read(new File(filename))

JAVA--通過DOM4J的方式讀取xml檔案簡單例項

程式碼如下: package com.xml.dom4j; import java.io.File; import java.util.Iterator; import java.util.List

讀取XML檔案DOM4J方法

DOM4J DOM4J方法讀取XML檔案與DOM方法的區別就在於DOM4J方法不需要建立解析器工廠物件與解析器物件,可以直接讀取XML檔案,相比於DOM方法更簡潔一些,但需要先匯入jar包(類庫)。 例: import java.io.File; im

python讀取xml檔案報錯xml.parsers.expat.ExpatError: XML or text declaration not at start of entity

先說明一下我之前對python的xml.dom.minidom模組不熟,遇到這個問題時先想到的是百度,結果轉了一圈回來發現大家都寫的是xml檔案中的第一行,也就是 <?xml version="1.0" encoding="GBK"?> 這個可能沒有頂格寫,有空格。可是我遇到的問

讀取XML檔案到DataSet示例

          /// <summary>         /// 讀取XML檔案   &nb

java讀取xml檔案資料

import java.io.File; import javax.xml.parsers.DocumentBuilder; import javax.xml.parsers.DocumentBuilderFactory; import o

selenium-python讀取XML檔案

首先這是我們要讀取的XML檔案 <?xml version="1.0" encoding="utf-8" ?><info> <base> <platform>windows</platform> <browser>Chorm</b

Java之讀取XML檔案內容

下面是我的Persons.xml檔案內容: <?xml version="1.0" encoding="utf-8"?> <persons> <person id="0

C++ 讀取XML檔案 Markup.cpp的 CMarkup 讀取XML

新增Markup.cpp和.h,使用時新增引用 bool LoadModelCfg(char* FileName) { CMarkup xml; if (!xml.Load(FileName)) { return false; } xml.ResetPos(); if (xml.

如何讀取xml檔案,根據xml節點屬性查詢並輸出xml檔案

主要是應用SimpleXML和遞迴函式來根據key值來查詢,並將結果以xml格式輸出。 <?php header("Content-type: text/xml"); //以xml格式輸出檔案 @$key=$_GET['key']; $find=false; //echo $key."<

遞迴讀取xml 檔案;

package cn; import java.io.File; import java.util.ArrayList; import java.util.List; import javax.xml.parsers.DocumentBuilder; import

python 之 如何通過指令碼讀取xml檔案節點

#!/usr/bin/env python # -*- coding: utf-8 -*- #coding=utf-8 #寫指令碼的時候習慣把自己常用的模組都import進來了 import sys import sre_compile import re import p

如何在tomcat伺服器中讀取xml檔案(路徑問題)

因為之前用的dom4j讀取的都是本地的xml檔案,所以一旦在伺服器中就不能再像之前那樣獲取xml路徑了。 可以通過反射獲得專案的src的路徑。 問題:如何在伺服器中讀取xml檔案(路徑問題)讀取product.xml檔案 解決方案:

asp.net簡單讀取xml檔案資訊

            //以下是迴圈讀取xml檔案中節點的值                 XmlDocument xmlDoc = new XmlDocument();                 xmlDoc.Load(Server.MapPath("Stude