首页  >  文章  >  后端开发  >  在.NET Framework中轻松处理XML数据(1-3)

在.NET Framework中轻松处理XML数据(1-3)

黄舟
黄舟原创
2016-12-20 14:04:071360浏览

??每个节点的类型是XmlNodeType枚举中的一种,在如图三所示的代码中,我们只用了其中的两种类型:Element 和 EndElement。输出源码重新定制了原始的文档结构,它丢弃或者说是疏忽了XML元素的属性和节点内容,只输出了元素节点名。假设我们应用了下面的XML片段: 

??<mags> 
??<mag name='MSDN Magazine'> 
??MSDN Magazine 
??</mag>
??<mag name='MSDN Voices'> 
??MSDN Voices 
??</mag> 
??</mags> 
??用上面的程序输出的成果如下: 

??<mags> 
??<mag> 
??</mag> 
??<mag> 
??</mag> 
??</mags>

??子节点的缩进量是根据浏览器的深度属性(Depth属性)设置的,Depth属性返回一个整形的数据,它表现当前节点的嵌套层次。所有文本都放在StringWriter对象中(一个非常方便的基于流的封装了StrigBuilder类的类)。 

??如前所述,浏览器不会主动通过Read方法拜访属性节点。要拜访当前元素的属性节点聚集,必需用一个简略的用MoveToNextAttribute方法的返回值把持的循环往遍历该聚集。下面的代码用于拜访当前节点的所有属性,并把属性的名称和它的值用逗号离开组合成一个字符串: 
??if (reader.HasAttributes) 
??while(reader.MoveToNextAttribute()) 
??buf = reader.Name '=\'' reader.Value '\','; 
??reader.MoveToElement(); 

??当你完成对属性集的处理时,调用MoveToElement方法使指针返回到属性所属的元素节点。准确的说,MoveToElement方法并不是真正的移动指针,由于在处理属性集时指针从来就没有从元素节点中移开。MoveToElement方法只不过指向某个内部成员,并依次取得成员的值。例如,用Name属性获得某个属性的属性名,然后调用MoveToElement方法把指针移到其所属的元素节点处。但是当你不需要持续处理别的节点时,就不必再调用MoveToElement方法了。


 以上就是在.NET Framework中轻松处理XML数据(1-3) 的内容,更多相关内容请关注PHP中文网(www.php.cn)! 


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn