參考自博客:https://blog.csdn.net/snakorse/article/details/45309901
先看一下MSDN里對這兩個屬性的解釋:
XmlNode.Value:獲取或設置節點的值。
XmlNode.InnerText:獲取或設置節點及其所有子節點的串聯值
InnerText會把節點及其子元素的文本內容(尖括號所包含的內容)拼接起來作為返回值;而Value則不然,無論是父節點還是子節點,返回值都為null,而當操作的節點類型為屬性時,Value的返回值與InnerText相同。其實,Value的返回值,與節點類型(NodeType)相關,下面是MSDN中列出的節點類型及 XmlNode.Value 的返回值:
類型 |
值 |
Attribute |
屬性的值 |
CDATASection |
CDATA 節的內容。 |
Comment |
注釋的內容 |
Document |
null |
DocumentFragment |
null |
DocumentType |
null |
Element |
null . 您可以使用 XmlElement.InnerText 或 XmlElement.InnerXml 屬性訪問元素節點的值。 |
Entity |
null |
EntityReference |
null |
Notation |
null |
ProcessingInstruction |
全部內容(不包括指令目標)。 |
Text |
文本節點的內容 |
SignificantWhitespace |
空白字符。 空白可由一個或多個空格字符、回車符、換行符或制表符組成。 |
Whitespace |
空白字符。 空白可由一個或多個空格字符、回車符、換行符或制表符組成。 |
XmlDeclaration |
聲明的內容(即在 <?xml 和 ?> 之間的所有內容)。 |