共用方式為


讀取內容

更新: November 2007

XmlReader 類別包括可用於讀取內容的成員。

注意事項:

此主題中說明的成員會傳回內容做為字串值。如果要讀取具型別內容,請參閱 讀取具型別的資料

值屬性

Value 屬性可用於取得目前節點的文字內容。傳回的值取決於目前節點的節點型別。下表說明為每個可能的節點型別傳回的內容。

節點型別

Attribute

屬性的值。

CDATA

CDATA 區段的內容。

Comment

註解的內容。

DocumentType

內部子集。

ProcessingInstruction

全部內容 (目標除外)。

SignificantWhitespace

混合內容模型中任何標記之間的泛空白字元。

Text

文字節點的內容。

Whitespace

標記之間的泛空白字元。

XmlDeclaration

宣告的內容。

其他所有的節點型別

空字串。

ReadString 方法

ReadString 方法會傳回項目或文字節點的內容做為字串。

如果 XmlReader 定位於項目上,則 ReadString 會將所有文字、顯著泛空白字元、泛空白字元及 CDATA 區段節點串連起來,並傳回串連的資料做為項目內容。讀取器會在遇到任何標記時停止。這可能會發生於混合內容模型中,或是讀取項目結束標記時。

如果 XmlReader 定位於文字節點上,則 ReadString 會執行文字、顯著泛空白字元、泛空白字元及 CDATA 區段節點的相同串連。讀取器會在非先前具名型別的第一個節點上停止。如果讀取器定位於屬性文字節點上,則 ReadString 具有相同的功能,就像讀取器定位於項目開始標記上一樣。它會傳回所有串連的項目文字節點。

注意事項:

ReadString 方法會在處理指令及註解時停止。但不會忽略它們。

ReadInnerXml 方法

ReadInnerXml 方法會傳回目前節點的所有內容,包括標記。不會傳回目前節點 (開始標記) 及對應的結束節點 (結束標記)。例如,如果您具有 XML 字串 <node>this<child id="123"/></node>,則 ReadInnerXml 會傳回 this<child id="123"/>。

下表說明如何處理項目及屬性節點。

節點型別

初始

位置

XML 片段

傳回

呼叫後

的位置

Element

在 item1 開始標記上。

<item1>text1</item1><item2>text2</item2>

text1

在 item2 開始標記上。

Attribute

在 attr1 屬性節點上。

<item attr1="val1" attr2="val2">text</item>

val1

保留在 attr1 屬性節點上。

如果讀取器定位於分葉節點上,則呼叫 ReadInnerXml 相當於呼叫 Read

ReadOuterXml 方法

ReadOuterXml 方法會傳回目前節點及其所有子系的所有 XML 內容 (包括標記)。其行為與 ReadInnerXml 類似,只不過它還會傳回開始及結束標記。

如果使用上述表格中的值,且讀取器定位於 item1 開始標記上,則 ReadOuterXml 會傳回 <item1>text1</item1>。如果讀取器定位於 attr1 屬性節點上,則 ReadOuterXml 會傳回 attr1="val1"。

請參閱

概念

讀取項目

讀取屬性

使用 XmlReader 讀取 XML