本文將會涉及3個方面的內容:
1.訪問xml檔案
2.xml文件物件模型
3.xml和dataset
這裡我們先介紹操作xml檔案的兩個物件:xmltextreader和xmltextwriter
開啟和讀取xml檔案使用到的物件就是xmltextreader物件。下面的例子開啟了與程式在同一路徑下的乙個例子檔案sample.xml
xmltextreader reader
=new
xmltextreader(
"sample.xml");
然後我們可以通過其
read
方法實現自動便利
xml檔案。例:
while
(reader.read())
下面我們看乙個複雜一些的例子。
1(reader.read())216
從第3行開始我們就根據nodetype屬性去判斷節點的型別,根據節點的不同型別進行不同的處理。
下表列出了一些常用的節點型別。
xmltextreader的nodetype的取值
型別
說明
all所有節點
attribute
乙個屬性
cdata
轉義那些會被看作標記語言(如html)的文字
comment
使用和-->分隔的注釋
document
xml資料樹的根節點
documenttype
文件的型別宣告,即標記
element
乙個元素,通常是xml檔案中的實際資料
endtag
元素的結束位置
none
不是節點
text
返回元素的文字內容
xmldeclaration
xml宣告節點,例如<?xml version=』<?xml:namespace prefix = st1 />1.0』?>
在進行寫入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宣告部分,即「<?xml version=」1.0」?>」
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
寫入注釋,自動加入注釋標誌「
7private
const
string
filename ="
sampledata.xml";89
public
static
void
main()
1074
本文參考自突破c#程式設計
讀寫XML檔案
1.將xml資料寫入檔案 寫入xml 傳入obj得型別 儲存得檔案路徑 要儲存得資料 public void writeobjecttofile string filename,t obj 2.從檔案中讀取xml資料,並序列化為物件 從檔案中讀取資料到xml檔案 返回型別 讀取的檔案路徑 publi...
讀寫xml檔案
以下面dameon來介紹讀取xml檔案 from xml.dom import minidom 建立dom物件 dom minidom.document 建立根節點。每次都要用dom物件來建立任何節點 root node dom.createelement info 用dom物件新增根元素 base...
DOM 讀寫XML檔案
以下是個人理解 定義智慧型介面指標 include include com artptr typedef ixmldomdocument,uuidof ixmldomdocument com artptr typedef ixmldomelement,uuidof ixmldomelement co...