Old*_*eon 19
这主要取决于您的需求.每个都有自己的功能.
DOM - 将整个内容拉入内存并在内部走动.适用于您希望使用的复杂内容的相对较小的XML块.XSLT使用DOM.
SAX - 当XML到达时观察它们飞过的东西.适用于大量数据或相对简单的处理.
StAX - 很像SAX,但不是响应流中发现的事件而是迭代xml - 请参阅何时应该选择SAX而不是StAX?讨论哪个是最好的.
这里有一个很好的讨论,在Java中使用DOM,SAX和StAX Parser解析XML - 作者:Mohamed Sanaulla.注意:他的SAX解析器有一个错误 - 他应该追加字符,而不是替换它们,因为字符数据是累积的并且可能以块的形式到达.
content = String.copyValueOf(ch, start, length);
Run Code Online (Sandbox Code Playgroud)
应该
content += String.copyValueOf(ch, start, length);
Run Code Online (Sandbox Code Playgroud)
还有一篇由Kaan Yamanyar撰写 的博客文章,DOM,SAX或StAX之间存在差异.