Java中的SAX解析器和XML Transformer有什么区别?

我可以使用SAX解析器或Transformer实现
XML从一种格式到另一种格式的转换吗?如果是这样,那么确切的区别是什么?

编辑::我的意思是我使用SAXTransformerFactory创建的变换器

最佳答案 SAX解析器允许您在
Java中解析XML文档.它将为每个元素,字符序列等回调您,并使用它可以构造表示部分/全部XML的对象树,或执行其他一些功能.

存在其他类型的解析器. DOM解析器将为您提供XML文档的基于树的对象表示.这是每个解析器类型的优点/缺点(DOM通常被描述为更多内存密集型,但提供完整的XML模型,而SAX是轻量级的,但您被解析器本身回调,无法导航任何模型的XML)

我有点模糊.你的XML Transformer,但我认为你的意思是XSLT.这是一个样式表转换,并在更高层次上运行,将转换(样式表)应用于输入XML并提供输出(通常但不限于XML)

编辑:发表评论后,请参阅this article

Finally you probably want to write the xml document to a string or to
a file, this can be done with a Transformer object, which come from
the transformer factory

点赞