输出结果:
第1次Read,节点Name:xml,节点类型:XmlDeclaration
第2次Read,节点Name:,节点类型:Whitespace
第3次Read,节点Name:EmpRecordsData,节点类型:Element
第4次Read,节点Name:,节点类型:Whitespace
第5次Read,节点Name:Ecode,节点类型:Element
第6次Read,节点Name:,节点类型:Whitespace
第7次Read,节点Name:EmpDetails,节点类型:Element
第8次Read,节点Name:,节点类型:Whitespace
第9次Read,节点Name:Ecode,节点类型:EndElement
第10次Read,节点Name:,节点类型:Whitespace
第11次Read,节点Name:Ecode,节点类型:Element
第12次Read,节点Name:,节点类型:Whitespace
第13次Read,节点Name:EmpDetails,节点类型:Element
第14次Read,节点Name:,节点类型:Whitespace
第15次Read,节点Name:Ecode,节点类型:EndElement
第16次Read,节点Name:,节点类型:Whitespace
第17次Read,节点Name:EmpRecordsData,节点类型:EndElement
第18次Read,节点Name:,节点类型:None
这说明,他是按下面读取的:
比如有一个元素:
<city>Shenzhen</city>
上面它会理解为3个节点;即使节点中没有内容也同样如此.
而且不仅如此,如上面程序反映,所有元素之间的空白处都同样理解为节点,比如
<city>Shenzhen</city>
<city>Hainan</city>
这里的第一个</city>与第二个<city>之间, 同样理解为一个空白节点.
上面只是了解以下.NET此类处理节点的方式,在程序中为了避免出错最好还是用
循环+判断节点Name和NodeType来判断.