XML學習中的問題

2021-10-05 22:02:02 字數 2370 閱讀 6526

一)xml的官方文件:

先放一下xml表的介紹

二)常見函式介紹:

(1)getelementsbytagname()

這函式有兩個過載:

實現:

static

void

findxmlfile

(string path)

catch

(system.xml.xmlexception

)xmlelement player =

(xmlelement)doc.

selectsinglenode

("player");

if(player ==

null

)throw

newexception

("do not find sonnode");

xmlnodelist songleitemlist = player.

getelementsbytagname

("sword");

console.

writeline

(songleitemlist.count)

;}

結果為3該函式是查詢節點下(包括節點的節點)名稱相同的節點並返回乙個鍊錶。

第二個過載

(2)該函式返回乙個type型別。由於基類object就有gettype()函式,

官方示例:

個人示例:

type類的介紹:

//記得書上有,一時沒找到,補:

(4)節點的刪除

(5)節點的替換

新節點在前,被替換的舊節點在後,

由舊節點的父節點呼叫函式,舊節點必須為父節點的子節點。效果如下:

(6)選擇單個節點

(1)查詢絕對路徑的節點

xmlelement equipmentchange =

(xmlelement)doc.

selectsinglenode

(@"player/player02/equipment"

);

(2)。。。。。

貼一片文章

(7)

setattribute(string, string) 設定具有指定名稱的特性的值。

setattribute(string, string, string) 設定具有指定本地名稱和命名空間 uri 的特性的值。

setattributenode(string, string) 新增指定的 xmlattribute。

setattributenode(xmlattribute) 新增指定的 xmlattribute。

(8)拓展方法

cast(ienumerable) 將 ienumerable 的元素強制轉換為指定的型別。

oftype(ienumerable) 根據指定型別篩選 ienumerable 的元素。

asparallel(ienumerable) 啟用查詢的並行化。

asqueryable(ienumerable) 將 ienumerable 轉換為 iqueryable。

(9)再補

學習問題 XML學習

1 乙個xml文件可以含有多個dtd文件嗎?答 當然可以完全可以在乙個dtd中引入另外乙個dtd,不然也不會出現使用name spacing的情況了。2 sgml是不是指的那些binary檔案?答 完全錯誤的理解。xml學習過程中的常見問題及其解答 sgml是xml的父語言,xml只是sgml的簡化...

xml中DOM物件的學習

dom的基本物件有5個 document,node,nodelist,element和attr。下面就這些物件的功能和實現的方法作乙個大致的介紹 document物件代表了整個xml的文件,所有其它的node,都以一定的順序包含在document物件之內,排列成乙個樹形的結構,程式設計師可以通過遍歷...

QT中XML的使用(學習筆記)

qdomdocument qdomdocument類表示乙個xml文件。qdomelement qdomelement類表示dom樹中的乙個元素。qdomattr qdomattr類表示qdomelement的乙個屬性。qdomnodelist qdomnodelist類是qdomnode物件的列表...