zoukankan      html  css  js  c++  java
  • C#解析Xml的Dom和Sax方式性能分析

    XML的解析器主要有DOM和SAX两种。

    相关操作的样例代码请见: http://blog.csdn.net/weixingstudio/article/details/8701191  

    先简要介绍SAX解析器(Simple API for XML),其实解析器就是对XML进行处理的一套API,相当于一个模块。

    SAX解析器是基于事件处理的,需要从头到尾把XML文档扫描一遍,在扫描的过程中,每次遇到一个语法结构时,就会调用这个特定语法结构的事件处理程序,向应用程序发送一个事件。

    DOM是文档对象模型解析,构建文档的分层语法结构,在内存中建立DOM树,DOM树的节点以对象的形式来标识,文档解析文成以后,文档的整个DOM树都会放在内存中。

    DOM的优点:

    1. 当文档的某一部分被多次的访问时,非常方便。

    2. 需要对文档进行调整或者一次性的访问整个文档。

    3.  DOM可以随时的访问文档中的某个部分。

    4. 可以避免一些无效的操作。

    DOM结构是完全的存储在内存中的,所以如果文档较大的话,会占用大量的内存。

    因为XML文档没有大小限制,所以一些文档可能就不能以DOM方式读取,SAX解析则不存在这样的问题,并且SAX解析的速度要比DOM快一些。

  • 相关阅读:
    T-sql 中 truncate 、delete与drop操作数据库的区别
    poj -3070 Fibonacci (矩阵快速幂)
    给定一个0-1串,请找到一个尽可能长的子串,其中包含的0与1的个数相等。
    最长的循环节
    大组合数取模
    n个点中求任意两点组成斜率的最大值
    csu
    csu
    poj
    hdu
  • 原文地址:https://www.cnblogs.com/qwji/p/3540253.html
Copyright © 2011-2022 走看看