当前位置: 首页 > 面试题库 >

SAX与XmlTextReader-C#中的SAX

太叔经赋
2023-03-14
问题内容

我正在尝试读取一个大型XML文档,我想以分块XmlDocument的方式进行,而不是将整个文件读入内存的方式。我知道我可以使用它XmlTextReader来执行此操作,但我想知道是否有人将SAX用于.NET?我知道Java开发人员对此很满意,我想知道是否值得尝试一下,如果可以的话使用它有什么好处。我正在寻找细节。


问题答案:

如果您在谈论.NET的SAX,则该项目似乎没有得到维护。最新版本是2年前。也许他们在上一个版本中做到了完美,但是我不会打赌。作者Karl
Waclawek似乎已经从网上消失了。

至于Java下的SAX?您打赌,这很好。不幸的是,SAX从未被开发为标准,因此所有非Java端口都一直在根据自己的需求改编Java
API。尽管DOM是一个非常糟糕的API,但它具有针对多种语言和环境进行设计的优势,因此可以轻松地用Java,C#,JavaScript,C等实现。



 类似资料:
  • 问题内容: 一段时间以来,我一直在使用DOM来解析我的小型xml文档。阅读有关JAXB的信息后(http://www.oracle.com/technetwork/articles/javase/index-140168.html),我打算使用JAXB DOM。 请让我知道这是否是正确的方法。 问题答案: JAXB不能直接与DOM和SAX相提并论。Java DOM和SAX解析API是用于解析XML

  • SAX(Simple API for XML)是一种基于事件的XML文档解析器。 与DOM解析器不同,SAX解析器不会创建解析树。 SAX是XML的流式接口,这意味着使用SAX的应用程序接收有关正在处理的XML文档的事件通知元素和属性,从文档顶部开始按顺序排列,然后关闭ROOT元素。 从上到下读取XML文档,识别构成格式良好的XML文档的标记。 令牌的处理顺序与它们在文档中出现的顺序相同。 向应用

  • SAX(Simple API for XML)是一个基于事件的xml文档解析器。 与DOM解析器不同,SAX解析器不会创建解析树。 SAX是XML的流式接口,这意味着使用SAX的应用程序接收有关正在处理的XML文档的事件通知 - 元素和属性,从文档顶部开始按顺序排列,并以关闭为止ROOT元素。 从上到下读取XML文档,识别构成格式良好的XML文档的标记。 令牌的处理顺序与文档中出现的顺序相同。 报

  • 这是一个 C# 的 XML 解析器。

  • 导语 我们前面讲述了用DOM的方法对XML文档进行操作,DOM实现起来很灵活,但是这样也就使得编程变得复杂了些,而且我们前面也提到过,DOM需要预先把整个XML文档都读入内存,这样就使得它不适合处理较大的文件。下面我们讲述另一种读取XML文档的方法,即SAX 。是的,如果你只想读取并显示整个XML文档,那么SAX是很好的选择,因为它提供了比DOM更简单的接口,并且它不需要将整个XML文档一次性读入