0

我对 MSXML 解析器有所了解,用本机代码创建 xml ..Msxml 依赖于 COM ..所以我想创建没有 com 和 dom 的 xml,所以我想选择 XMLLITE ..但我不知道关于 xmllite 的全部细节,什么时候我在 msdn 中阅读了 xmllite 文档,我收集了一些要点,它们将只提供 2 个东西(IXMLReader 和 IxmlWriter)。在 msxml 中,我有很多功能可以执行 xml 操作,例如选择单节点、追加子节点 ..现在我可以执行与 XMLLITE 相同的东西?..请给我正确的选择...

4

1 回答 1

3

MSXML 具有一组丰富的功能,例如 DOM 1.0(您可以使用 appendChild 等操作 DOM 树)、SAX 2.0、XPath 1.0(selectSingleNode 等)和 XSLT 1.0。此外,MSXML 支持 XSD 1.0 和 DTD 验证。MSXML 作为 COM 对象提供。

与支持内存中树模型的 DOM 和支持推送模型解析器的 SAX 的 MSXML 不同,XmlLite 提供了非常快且占用空间有限的拉模型解析器。XmlLite 作为纯 C++ 库提供。不幸的是,它不支持 DOM、XPath、XSLT、XSD 和 DTD 验证,尽管在自定义解析器方面支持 DTD 实体。

所以选择取决于你的要求。如果 XmlLite 满足我的需要,我会使用它,但我不认为 COM 是我采用 MSXML 解决方案的负担。COM 本身并没有什么问题。

于 2010-06-10T13:57:14.773 回答