下载此文档

第八章C解析XML.ppt


文档分类:IT计算机 | 页数:约56页 举报非法文档有奖
1/56
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/56 下载此文档
文档列表 文档介绍
第八章 C#XML
C#读写XML的几种方式
DOM
流模型
验证有效性
第八章C解析XML
C#读写XML的几种方式
在针对XML文档的应用编程接口中,一般有两种模型:W3C制定的DOM(Document Object Method,文档对象模型)和流模型
流模型中有两种变体——“推”模型(代表为由David Megginson领导的SAX--SimpleAPI for XML,用于XML的简单API)和“拉”模型(.Net中的流模型)。
第八章C解析XML
C#读写XML的几种方式
XML解析方法之“推”模型:
“推”模型也就是常说的SAX,SAX是一种靠事件驱动的模型。它每发现一个节点就用“推”模型引发一个事件,而我们必须编写这些事件的处理程序,很麻烦。
第八章C解析XML
C#读写XML的几种方式
C# XML解析方法之“拉”模型:
.NET中使用的是基于“拉”模型的实现方案。 “拉”模型在遍历文档时会把感兴趣的文档部分从读取器中拉出,不需要引发事件,允许我们以编程的方式访问文档,这大大的提高了灵活性,“拉”模型可以选择性的处理节点。,“拉”模型通过XML阅读器(XMLTextReader类)来实现的。该类提供Xml文件读取的功能,它可以验证文档是否格式良好,如果不是格式良好的Xml文档,该类在读取过程中将会抛出XmlException异常。任何时候在内存中只有当前节点,但它是只读的,向前的,不能在文档中执行向后导航操作。
第八章C解析XML
C#读写XML的几种方式
C# XML解析方法之DOM:
DOM的好处在于它允许编辑和更新XML文档,可以随机访问文档中的数据,可以使用XPath查询。但是,DOM的缺点在于它需要一次性的加载整个文档到内存中,对于大型的文档,这会造成资源问题。 DOM分析器(XMLDocument)实现DOM模型。
第八章C解析XML
C#读写XML的几种方式
因此,.NET Framework完全支持XML DOM模式,但它不支持SAX模式。.NET Framework支持两种不同的分析模式:XML DOM分析器(XMLDocument类)和XML阅读器(XMLTextReader类),不支持SAX分析器, 但这并不意味着它没有提供类似SAX分析器的功能。通过XML阅读器可以将SAX的所有的功能很容易的实现及更有效的运用。
第八章C解析XML
C#读写XML的几种方式
SAX和DOM在实现过程中,分别侧重于不同的方面以满足不同的应用需求。DOM为开发基于XML的应用系统提供了便利。它通过一种随机访问机制,使得应用程序利用该接口可以在任何时候访问XML文档中的任何一部分数据,也可以对XML文档中的数据进行插入、删除、修改、移动等操作。在DOM中,文档的逻辑结构类似一棵树。文档、文档中的根、元素、元素内容、属性、属性值等都是以对象模型的形式表示的。DOM的优点在于它在内存中保存文档的整个模型。这使得能以任何顺序访问XML元素。然而,对于大型文档来说,这样做可能不方便。因为它可能会用尽内存,或者当系统达到了它的极限时,机器的性能将会慢下来。
第八章C解析XML
C#读写XML的几种方式
SAX提供了一种对XML文档进行顺序访问的模式,这是一种快速读写XML数据的方式。SAX接口是事件驱动的,当使用SAX分析器对XML文档进行分析时,就会触发一系列事件,并激活相应的事件处理函数,从而完成对XML文档的访问。SAX处理XML的方式与DOM不同。SAX解析器不是将DOM树解析和表现为输出,它是基于事件的,所以在XML被解析时,事件被发送给引擎。SAX可以在文档的开始接收事件,也可以接收文档中的元素。使用这些事件可以构建一种结构。因为SAX没有把XML文档完全地加载到内存中,所以需要的系统资源较少,是一个分析大型XML文档的高效API。缺点是编写SAX比编写DOM复杂,这因为首先必须实现通知接口并维护状态,其次SAX不允许对文档进行随机访问,也没有提供像DOM那样的修改功能。
第八章C解析XML
C#读写XML的几种方式
比较而言,DOM和SAX各有自己的应用场合。
DOM适用于处理下面的问题:解析比较小的XML文件;需要对文档进行修改;需要随机对文档进行访问。
SAX适于处理下面的问题:对大型文档进行处理;只需要文档的部分内容;只需要从文档中得到特定信息。
第八章C解析XML
C#读写XML的几种方式
名称空间中组织进了以下几个用于XML的类

第八章C解析XML 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数56
  • 收藏数0 收藏
  • 顶次数0
  • 上传人AIOPIO
  • 文件大小472 KB
  • 时间2021-04-10