自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

XML DOM文檔對象模型解析

開發(fā) 前端
XML DOM文檔對象模型類是XML文檔的內(nèi)存中表示形式,DOM文檔對象模型使您能夠以編程方式讀取、處理和修改XML文檔。XmlReader類也讀取XML,但它提供非緩存的只進、只讀訪問。

這里向大家描述一下XML DOM文檔對象模型的用法,DOM文檔對象模型使您能夠以編程方式讀取、處理和修改XML文檔,請看下面詳細介紹。

XML DOM文檔對象模型

XML DOM文檔對象模型類是XML文檔的內(nèi)存中表示形式。DOM文檔對象模型使您能夠以編程方式讀取、處理和修改XML文檔。XmlReader類也讀取XML,但它提供非緩存的只進、只讀訪問。這意味著使用XmlReader無法編輯屬性值或元素內(nèi)容,也無法插入和移除節(jié)點。編輯是DOM文檔對象模型的主要功能。XML數(shù)據(jù)在內(nèi)存中表示是常見的結(jié)構(gòu)化方法,盡管實際的XML數(shù)據(jù)在文件中時或從另一個對象傳入時以線性方式存儲。以下是XML數(shù)據(jù)。

輸入

    1. <?xmlversionxmlversion="1.0"?> 
    2. <books> 
    3. <book> 
    4. <author>Carson</author> 
    5. <priceformatpriceformat="dollar">31.95</price> 
    6. <pubdate>05/01/2001</pubdate> 
    7. </book> 
    8. <pubinfo> 
    9. <publisher>MSPress</publisher> 
    10. <state>WA</state> 
    11. </pubinfo> 
    12. </books> 

下圖顯示將此XML數(shù)據(jù)讀入DOM文檔對象模型結(jié)構(gòu)中時如何構(gòu)造內(nèi)存。

XML文檔結(jié)構(gòu)

XML文檔結(jié)構(gòu)

在XML文檔結(jié)構(gòu)中,此圖中的每個圓圈表示一個節(jié)點(稱為XmlNode對象)。XmlNode對象是DOM樹中的基本對象。XmlDocument類(擴展XmlNode)支持用于對整個文檔執(zhí)行操作(例如,將文檔加載到內(nèi)存中或?qū)ML保存到文件中)的方法。此外,XmlDocument提供了查看和處理整個XML文檔中的節(jié)點的方法。XmlNode和XmlDocument都具有性能和可用性增強,并通過方法和屬性執(zhí)行下列操作:

◆訪問和修改DOM文檔對象模型特定的節(jié)點,如元素節(jié)點、實體引用節(jié)點等。

◆除檢索節(jié)點包含的信息(如元素節(jié)點中的文本)外,還檢索整個節(jié)點。

注意

如果應(yīng)用程序不需要DOM提供的結(jié)構(gòu)或編輯功能,則XmlReader和XmlWriter類提供對XML的非緩存的只進流訪問。有關(guān)更多信息,請參見用XmlReader讀取XML和使用XmlWriter編寫XML。

Node對象具有一組方法和屬性以及基本的和定義完善的特性。其中的某些特性包括:

◆節(jié)點有單個父節(jié)點,父節(jié)點是與節(jié)點相鄰的上一級節(jié)點。唯一沒有父級的節(jié)點是文檔根,因為它是頂級節(jié)點,包含了文檔本身和文檔片段。

◆大多數(shù)節(jié)點可以有多個子節(jié)點,子節(jié)點是與節(jié)點相鄰的下一級節(jié)點。以下是可以有子節(jié)點的節(jié)點類型列表。

Document

DocumentFragment

EntityReference

Element

Attribute

XmlDeclaration、Notation、Entity、CDATASection、Text、Comment、ProcessingInstruction和DocumentType節(jié)點沒有子節(jié)點。

◆處于同一級別、在關(guān)系圖中由book和pubinfo節(jié)點表示的節(jié)點是同輩。

DOM文檔對象模型的一個特性是處理屬性的方式。屬性是不屬于父子關(guān)系和同輩關(guān)系的節(jié)點。屬性被視為元素節(jié)點的屬性,由名稱和值對組成。例如,如果存在由與元素price關(guān)聯(lián)的format="dollar"組成的XML數(shù)據(jù),則單詞format是名稱,format屬性的值是dollar。為檢索price節(jié)點的format="dollar"屬性,可以在游標位于price元素節(jié)點時調(diào)用GetAttribute方法。有關(guān)更多信息,請參見訪問DOM中的屬性。

將XML讀入內(nèi)存時會創(chuàng)建節(jié)點。然而,并非所有節(jié)點都是同一類型。XML中的元素具有不同于處理指令的規(guī)則和語法。因此,在讀取各種數(shù)據(jù)時,將為每個節(jié)點分配一種節(jié)點類型。此節(jié)點類型確定節(jié)點的特性和功能。

有關(guān)在內(nèi)存中生成的節(jié)點類型的更多信息,請參見XML節(jié)點類型。有關(guān)在節(jié)點樹中創(chuàng)建的對象的更多信息,請參見將對象層次結(jié)構(gòu)映射到XML數(shù)據(jù)。

Microsoft擴展了萬維網(wǎng)聯(lián)合會(W3C)DOM級別1和級別2中可用的API,使XML文檔的使用更容易。在完全支持W3C標準的同時,??加的類、方法和屬性增加了使用W3CXMLDOM無法完成的功能。新類使您能夠訪問關(guān)系數(shù)據(jù),為您提供與ADO.NET數(shù)據(jù)同步、同時將數(shù)據(jù)作為XML公開的方法。有關(guān)更多信息,請參見使DataSet與XmlDataDocument同步。

在將XML數(shù)據(jù)讀入內(nèi)存,以更改其結(jié)構(gòu)、添加或移除節(jié)點或者與在元素包含的文本中一樣修改節(jié)點所保存的數(shù)據(jù)時,DOM文檔對象模型最有用。不過,在其他方案中,還有其他比DOM更快的類。要對XML進行快速非緩存只進流訪問,請使用XmlReader和XmlWriter。如果需要用游標模型和XPath進行隨機訪問,請使用XPathNavigator類。
 

【編輯推薦】

  1. 探究DOM文檔對象模型用法
  2. W3C DOM模型用法詳解
  3. 深入學(xué)習(xí)DOM模型基礎(chǔ)
  4. 深入了解JavaScript HTML DOM對象
  5. 術(shù)語匯編 Javascript DOM技術(shù)探究

 

 

責(zé)任編輯:佚名 來源: msdn.microsoft.com
相關(guān)推薦

2010-09-28 11:03:19

XML DOM

2010-09-09 13:55:47

XML DOM

2012-04-26 08:29:22

DOM

2010-09-28 13:24:34

DOM文檔對象模型

2010-09-28 09:43:37

DOM文檔對象模型

2010-09-28 10:40:32

HTML DOM

2012-05-30 10:03:57

dom4jXML亂碼

2009-02-10 09:23:03

DOM模型MSXML

2009-11-02 11:02:58

VB.NET XML文

2010-09-28 10:09:35

DOM對象模型

2010-09-28 11:11:23

XML DOMHTML DOM

2009-06-23 14:22:00

DOM文檔XML文件Java

2012-06-27 09:44:28

ibmdw

2021-09-09 10:26:26

Javascript 文檔對象前端

2009-12-02 13:07:27

PHP XMLRead

2010-09-28 10:33:59

HTML DOM Ch

2011-12-28 10:57:37

2010-09-13 14:24:17

JavaScript

2010-09-09 17:19:07

HTML DOMXML DOM

2010-09-28 10:24:50

HTML DOMXML DOM
點贊
收藏

51CTO技術(shù)棧公眾號