DOM与saxjava
我有一个很大的xml文件,可以从互联网上下载。为了解析它,我尝试使用DOM解析器,但是它不允许我跳过某些标记,因为它会给我一个错误。有办法解决这个问题吗?如果我理解正确,SAX解析器允许您跳过标记,而DOM则不允许。如果是这样的话,我不明白DOM解析器的优点是什么。提前感谢。DOM被设计为一个独立于语言的对象模型,用于保存任何XML数据,因此是一个庞大而复杂的系统。它非常适合两阶段的方法,即首先加载XML文档,然后对其执行各种操作。 另一方面,SAX被设计为使用单相方法的相当轻的系统。使用SAX,在加载文档时执行用户指定的操作。一些应用程序使用SAX生成更小的对象模型,过滤掉不感兴趣的信息,然后进行类似于DOM的处理。 请注意,尽管DOM和SAX是众所周知的“标准”XMLAPI,但还有很多其他可用的API,有时使用非标准API可能会更好。对于XML来说,重要的部分总是数据;代码可以重写 一些要点:DOM与saxjava,java,android,parsing,dom,xml-parsing,Java,Android,Parsing,Dom,Xml Parsing,我有一个很大的xml文件,可以从互联网上下载。为了解析它,我尝试使用DOM解析器,但是它不允许我跳过某些标记,因为它会给我一个错误。有办法解决这个问题吗?如果我理解正确,SAX解析器允许您跳过标记,而DOM则不允许。如果是这样的话,我不明白DOM解析器的优点是什么。提前感谢。DOM被设计为一个独立于语言的对象模型,用于保存任何XML数据,因此是一个庞大而复杂的系统。它非常适合两阶段的方法,即首先加载XML文档,然后对其执行各种操作。 另一方面,SAX被设计为使用单相方法的相当轻的系统。使用SAX
他们都能跳过标签吗?还是只有SAX可以?换句话说,DOM需要解析所有标记吗?DOM不能跳过标记,它以树模型的形式返回所有信息,然后从树模型中选择需要的特定信息。。。所以要回答您的问题,没有DOM不能跳过标记,只有SAX可以。有不同的方法只从树的某个级别(如树的lowset级别)返回信息,但您仍然需要遍历所有标记才能执行此操作