• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

软件测试开发技术.Net中的XmlReader与XmlWriter解析[1]

发布: 2009-8-12 10:06 | 作者: 不详 | 来源: 领测软件测试网采编 | 查看: 13次 | 进入软件测试论坛讨论

领测软件测试网

软件测试开发技术.Net中的XmlReader与XmlWriter解析[1]   .Net三层架构

关键字:.Net XmlReader XmlWriter

  XML在.NET Framework 中有着重要的作用。如:.NET Framwork 本身的配置文件和源代码文档中使用XML,SOAP、WEB服务和ADO.NET也使用XML。

  为了扩展XML,.NET Framwork包含了System.Xml命名空间。这个命名空间带有许多处理XML的类。如,XmlDocument(这是DOM实现方式)类,以及.NET为SAX提供的一种代替品(XmlReader和XmlWriter类)。

  XPath和XSLT类,System.Xml.Serialization命名空间中的类从XML文档中创建一个对象(反串行化)。

  操作XML有两个方法

  1.使用MSXML

  MSXML 是XML的分析器,MSXML是一个基于COM的组件,所以需要创建交互操作的程序集。最简单的方法就是在VS 中添加这个COM组件(Microsoft XML,v4.0(或v3.0,v2.6))的引用。这时在引用那一栏中就会出现MSXML2(在导入COM组件是时,为了新程序集提供的命名空间是该COM组件的类型库名)。

  2.使用System.Xml类

  与msxml类相比,System.Xml类有几个优点。首先,System.Xml是托管代码,使用它可以确保所有的代码都获得安全保护和类型安全性。使用COM交互操作会增加一些开销,但最重要的是,System.Xml命名空间很容易使用,灵活性非常大。

  读写流格式的XML

  XmlReader提供内存要求不是很高,提供了一种非常迅速、只几前的只读光标来处理XML数据。

  XmlWriter可以生成XML文档。

  XmlReader和XmlWriter都是抽象类。

  派生于XmlReader的类有XmlNodeReader(把XmlNode作为其源,而不是一个流)、XmlValidatingReader(XmlValidatingReader添加了DTD和模式验证,提供数据的有效性验证)、XmlTextReader(与IO命名空间中的TextReader对象一起使用)

  XmlTextWriter(与IO命名空间中TextWriter对象一起使用)

  XmlReader类

  XmlReader非常类似于SAX。它们最大的区别是SAX是一种推模型(所有XML数据都必须由应用程序 处理,无论是否需要这些数据),XmlReader是一种拉模型(如果不需要所有的数据,就不需要处理它们)。

  richTextBox1.Clear();

  XmlReader rdr = XmlReader.Create("book.xml");

  while (rdr.Read()){

  if (rdr.NodeType == XmlNodeType.Text)

  richTextBox1.AppendText(rdr.Value+"\r\n");

  }

  (1)使用静态方法Create(),返回一个XmlReader对象。

  (2)Read()方法可以进入下一个节点。

  XmlReader类还可以读取强类型化的数据,它有几个ReadValuesAs方法,如、ReadValueAsDouble、ReadValueAsBoolean等。

 

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: net NET Net 技术 软件测试 XmlReader XmlWriter


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网