首頁 後端開發 XML/RSS教程 詳解讀寫XML檔的程式碼案例

詳解讀寫XML檔的程式碼案例

Mar 23, 2017 pm 04:41 PM

        本文將會涉及3個面向的內容:
        1.存取XML檔案
        2. XML文檔物件模式
        3. XML和DataSet

        這裡我們先介紹操作XML檔案的兩個物件:XmlTextReader和XmlTextWriter
        開啟和讀取XmlTextReader和XmlTextWriter

        開啟和讀取Xml》所使用到的物件就是XmlTextReader。下面的範例開啟了與程式在相同路徑下的一個範例檔案sample.xml

XmlTextReader reader = new XmlTextReader("sample.xml");
登入後複製

        接著我們可以透過其Read方法實作自動便利XML檔。例:

while(reader.Read())
{
       //在这里填写对于XML的操作代码
}
登入後複製

        下面我們來看一個複雜的範例。

while(reader.Read())
 2{
 3    switch(reader.NodeType)
 4    {
 5        case XmlNodeType.Element:   //当前节点是一个元素
 6              Console.Write("<" + reader.Name);
 7            while(reader.MoveToNextAttribute()) //按照顺序读取下一个属性
 8              Console.Write(" " + reader.Name + "=&#39;" + reader.Value + "&#39;");
 9            Console.Write(">");
10            break;
11        case XmlNodeType.DocumentType:  //XML文件的类型声明
12              Console.WriteLine(reader.NodeType + "<" + reader.Name + ">" + reader.Value);
13            break;
14        ……
15        }
16    }
登入後複製

        從第3行開始我們就依照NodeType屬性去判斷節點的型別,依照節點的不同型別進行不同的處理。

        下表則列出了一些常用的節點類型。 ##DocumentTypeElement#EndTagNoneTextXMLDeclaration

XmlTextReader#的NodeType#的取值

##類型

#說明

All

所有節點

#Attribute

##一個屬性

CDATA

#轉義那些會被看成標記語言(如HTML)的文字

Comment

使用分隔的

註解

Document

XML資料樹的根節點

##XML資料樹的根節點

文件的類型聲明,即標記

一個元素,通常是XML檔案中的實際資料

元素的結束位置

不是節點

傳回元素的文字內容

###XML宣告節點,例如 在进行写入XML文件时我们使用的XmlTextWriter类,它是XmlWriter的子类,速度快且不使用缓存,但是同XmlTextReader一样,在写入XML文件时只能向前。

我们假定要写入的XML文件在C盘根目录下:

XmlTextWriter writer = new XmlTextWriter("C:\\sample2.xml",null);
登入後複製

在这里如果不想把数据写入文件,而只是想在命令窗口显示,则可以把“Console.Out”作为参数传递给构造器,此时应把上述语句改为:

XmlTextWriter writer = new XmlTextWriter(Console.Out);
登入後複製

下面我们介绍一下写入XML文件数据的一些常用方法:

XmlTextWriter的常用方法

方法

说明

用法

WriteStartDocument

写XML声明部分,即“

writer.WriteStartDocument();

WriteEndDocument

使没有闭合元素闭合

writer.WriteEndDocument();

WriteDocType

写DOCTYPE声明

writer.WriteDocType("sample2",null,null,"");

WriteStartElement

写元素的开始标志

writer.WriteStartElement("sample2");

WriteEndElement

写元素的结束标志

writer.WriteEndElement();

WriteString

写入字符串

writer.WriteString("Pride And Prejudice");

WriteCData

写CDATA块,即写入的文字在

writer.WriteCData("Price 15% off!!");

WriteRaw

手工写入一行,不作任何处理

writer.WriteRaw("this & that");

WriteEntityRef

写入实体引用,即前面加“&”后面加“;”

writer.WriteEntityRef("h");

WriteProcessingInstruction

写入处理指令,即前面加“

writer.WriteProcessingInstruction("xml-stylesheet",PItext);

WriteComment

写入注释,自动加入注释标志“

熱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

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

熱工具

記事本++7.3.1

記事本++7.3.1

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

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

xml檔案是幹嘛的 xml檔案是幹嘛的 Aug 03, 2023 am 09:38 AM

XML檔案是用來描述和傳輸資料的一種標記語言。它以其可擴展性、可讀性和靈活性而聞名,廣泛應用於Web應用程式、資料交換和Web服務。 XML的格式和結構使得資料的組織和解釋變得簡單明了,從而提高了資料的交換和共享效率 。

xml檔案開啟方法 xml檔案開啟方法 Feb 22, 2024 pm 04:04 PM

常見的XML文件開啟方法:1、文字編輯器;2、瀏覽器;3、XML編輯器;4、整合開發環境;5、Microsoft Excel等等。

如何使用 PHP 實現資料快取和讀寫功能 如何使用 PHP 實現資料快取和讀寫功能 Sep 05, 2023 pm 05:45 PM

如何使用PHP實現資料快取和讀寫功能快取是提高系統效能的重要方式,透過快取可以將頻繁使用的資料儲存在記憶體中,以提高資料的讀取速度。在PHP中,我們可以使用各種方法來實現資料快取和讀寫功能。本文將介紹兩種常用的方法:使用檔案快取和使用記憶體快取。一、使用檔案快取檔案快取是將資料儲存在檔案中,以便後續讀取。下面是一個使用檔案快取實現資料讀寫的範例程式碼:

實戰:Linux上硬碟io讀寫測試 實戰:Linux上硬碟io讀寫測試 Feb 19, 2024 pm 03:40 PM

概念fio,又稱為FlexibleIOTester,是JensAxboe編寫的應用程式。 Jens是LinuxKernel中blockIOsubsystem的維護者。 FIO是一種用於測試網路檔案系統和磁碟效能的工具,常用於驗證機型和比較檔案系統效能。它能自動將fio指令傳送到群集機器列表,並收集小檔案的IOPS和大檔案的吞吐量資料。 rw=[mode]rwmixwrite=30在混合讀寫的模式下,寫佔30%moderead順序讀write順序寫readwrite順序混合讀寫randwrite隨機寫r

揭秘 Java 檔案操作的內部原理 揭秘 Java 檔案操作的內部原理 Feb 28, 2024 am 08:22 AM

檔案系統APIJava檔案操作的內部原理與作業系統的檔案系統api密切相關。在Java中,檔案操作是由java.NIO套件中的java.nio.file模組提供的。本模組提供了檔案系統API的封裝,使Java開發者能夠在不同的作業系統上使用統一的API進行檔案操作。檔案物件當Java程式需要存取檔案時,它首先需要建立一個java.nio.file.Path物件。 Path物件代表了檔案系統中的一個路徑,可以是絕對路徑也可以是相對路徑。一旦建立了Path對象,就可以使用它來取得文件的各種屬性,例如名稱

xml檔案是什麼 xml檔案是什麼 Jan 04, 2021 am 10:59 AM

xml文件一般指裡面寫有可擴充標記語言的文件,XML是可擴充標記語言,標準通用標記語言的子集,是用來標記電子文件使其具有結構性的標記語言。

解密Java中處理DBF檔案的讀取和寫入方法 解密Java中處理DBF檔案的讀取和寫入方法 Mar 29, 2024 pm 12:39 PM

解密Java中處理DBF檔案的讀取和寫入方法DBF(dBASEFile)是一種常見的資料庫檔案格式,通常用於儲存表格資料。在Java程式中,處理DBF檔案的讀取和寫入是一個比較常見的需求。本文將介紹如何使用Java解密此過程,並提供具體的程式碼範例。一、讀取DBF檔案在Java中,讀取DBF檔案通常需要藉助第三方函式庫,例如使用dbfread函式庫。首先需要在項目

怎麼開啟xml文件 怎麼開啟xml文件 Aug 02, 2023 pm 03:35 PM

xml文件可以使用文字編輯器、瀏覽器、XML編輯器和整合開發環境開啟。 1、文字編輯器,只需右鍵單擊文件並選擇適當的編輯器即可開啟;2、瀏覽器,只需雙擊文件或將其拖放到瀏覽器視窗中即可開啟;3、XML編輯器,這些工具具有XML語法的高亮顯示、自動完成、語法檢查和驗證等功能,使我們能夠更方便地編輯和管理XML文件;4、集成開發環境,供專門的功能來創建、編輯和調試XML文件。

See all articles