搜尋
首頁後端開發XML/RSS教程XML檔案使用DOM方法讀取的範例程式碼

XML內容(放入專案) 

<?xml version="1.0" encoding="UTF-8"?>	

	<bookstore>
		<book id="1">
			<name>冰与火之歌</name>
			<author>乔治马丁</author>
			<year>2014</year>
			<price>89</price>
		</book>
		<book id="2">
			<name>安徒生童话</name>
			<year>2004</year>
			<price>77</price>		
			<language>English</language>
		</book>
	</bookstore>

程式碼實作 

import java.awt.print.Book;
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.NamedNodeMap;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;



public class XmlDOM {
    public static void main(String[] args) {
        DocumentBuilderFactory dbf =  DocumentBuilderFactory.newInstance();
      try {
        DocumentBuilder builder = dbf.newDocumentBuilder();
        Document document =  builder.parse("xml/001.xml");
        //nodeList获取所有节点的集合
        
        
        NodeList nodeList = document.getElementsByTagName("book");
       //便利每一个book节点
        for(int i=0;i<nodeList.getLength();i++){
            System.out.println("------------------------------------------j第" + (i+1) + "本书信息");
             //获取book节点
            Node book = nodeList.item(i);
          /*  //获取到书的所有信息
            NamedNodeMap bookMap = book.getAttributes();
            //遍历
            for(int n=0;n<bookMap.getLength();n++){
             Node attr =   bookMap.item(n);
            //获取属性名/获取属性值
            System.out.println("属性名:"+attr.getNodeName() + "" + "属性值:" + attr.getNodeValue());
            }*/
            
            NodeList childNodes = book.getChildNodes();
            for(int j=0;j<childNodes.getLength();j++){
                //区分出text类型的node以及element类型的node
                if(childNodes.item(j).getNodeType() == Node.ELEMENT_NODE){
                    //获取了Element节点的节点名
                    System.out.println(childNodes.item(j).getNodeName() + "=" + childNodes.item(j).getTextContent());
                }
               
            }
        }
        
    } catch (ParserConfigurationException e) {
        e.printStackTrace();
    } catch (SAXException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
    }
}

執行結果: 

------------------------------------------j第1本书信息 
name=冰与火之歌 
author=乔治马丁 
year=2014 
price=89 
------------------------------------------j第2本书信息 
name=安徒生童话 
year=2004 
price=77 
language=English

以上是XML檔案使用DOM方法讀取的範例程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
python怎麼讀取xml文件python怎麼讀取xml文件May 16, 2025 am 11:09 AM

用Python讀取XML文件的方法包括:1.使用xml.etree.ElementTree庫進行基本解析;2.使用lxml庫和XPath表達式進行高級解析。通過這些方法,可以高效地處理和提取XML文件中的數據。

xml 怎麼轉換成表格xml 怎麼轉換成表格May 16, 2025 am 11:06 AM

將XML數據轉換成表格可以通過以下步驟實現:1.解析XML文件,2.將數據映射到表格結構,3.生成表格數據。使用Python的xml.etree.ElementTree和pandas庫可以輕鬆實現這一轉換過程。

xml怎麼格式化文件xml怎麼格式化文件May 16, 2025 am 11:03 AM

格式化XML文件的原因是提高人類的閱讀和維護效率。 1.手動格式化效率低且易出錯。 2.自動化工具如Notepad 和VisualStudioCode能快速整理XML文件。 3.使用Python的xml.dom.minidom模塊可以簡單格式化XML字符串,但需注意可能添加額外空白節點。

xml視須文件怎麼打開xml視須文件怎麼打開May 16, 2025 am 11:00 AM

.xsm文件是一種XMLSchema文件,用於定義XML文件的結構和約束。 1)使用文本編輯器如Notepad 或VisualStudioCode打開.xsm文件。 2)對於高級功能,使用OxygenXMLEditor或AltovaXMLSpy進行Schema驗證和自動補全。 3)通過Python的lxml庫,可以驗證XML文件是否符合Schema,並使用流式處理優化大型文件的處理性能。

微信中發送的xml怎麼打開微信中發送的xml怎麼打開May 16, 2025 am 10:57 AM

微信中發送的XML文件可以通過以下步驟打開和處理:1.從微信中提取XML文件:長按文件,選擇“保存到手機”或“下載”。 2.在不同設備上打開文件:在Windows上使用瀏覽器或Notepad ,在Mac上使用瀏覽器或TextEdit,在iOS上使用“文件”應用,在Android上使用“文件管理器”或XML查看器應用。 3.理解和使用XML文件內容:通過瀏覽器或文本編輯器查看文件內容,必要時使用編程語言如Python進行解析和修改。

xml文件是什麼怎麼操作xml文件是什麼怎麼操作May 16, 2025 am 10:54 AM

XML文件的核心作用是存儲和傳輸結構化數據。 1)解析XML文件可使用DOM或SAX方法,DOM適合小文件,SAX適合大文件。 2)生成XML文件可通過DOM或直接編寫。 3)處理命名空間時,使用命名空間前綴避免標籤衝突。 4)調試時,使用驗證工具和異常處理。 5)優化時,使用SAX解析器和緩存機制。

xlsx怎麼轉換成xmlxlsx怎麼轉換成xmlMay 16, 2025 am 10:51 AM

使用Python可以將xlsx文件轉換為xml文件。 1)使用openpyxl庫讀取xlsx文件,2)使用xml.etree.ElementTree庫創建和寫入xml文件,3)遍歷xlsx文件中的數據並填充到xml結構中,4)處理可能遇到的編碼、數據類型和缺失值問題。

發票怎麼轉換成xml發票怎麼轉換成xmlMay 16, 2025 am 10:48 AM

將發票轉換成XML格式可以通過以下步驟實現:1.數據解析:從發票中提取相關信息。 2.數據映射:將提取的數據映射到XML結構中。 3.XML生成:使用Python的xml.etree.ElementTree模塊生成XML文件,這一過程包括逐步構建XML樹結構並寫入文件。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

SublimeText3 英文版

SublimeText3 英文版

推薦:為Win版本,支援程式碼提示!

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。