我知道至少有三个轻量级C++ XML解析器:RapidXML,TinyXML和PugiXML.但是,所有这三个都使用基于DOM的接口(即,它们构建自己的XML文档的内存中表示,然后提供遍历和操作它的接口).对于我必须处理的大多数情况,我更喜欢SAX接口(解析器只是吐出一些事件流,比如start-of-tag,应用程序代码负责根据这些事件做任何想做的事情) .
任何人都可以推荐一个带有SAX接口的轻量级C++ XML库吗?
编辑:我还应该注意Microsoft XmlLite库,它确实使用SAX接口(好吧,实际上是一个"拉"接口,可能更好).不幸的是,目前我已经排除了它,因为据我所知它只是闭源和Windows(如果我错了,请纠正我).
你可以试试http://die-xml.googlecode.com/.它看起来非常小而且易于使用
这是最近制作的C++ 0x XML SAX解析器开源,作者愿意反馈
它解析输入流并在与std :: function兼容的回调上生成事件
堆栈机器使用有限自动机作为后端,一些事件(开始标记和文本节点)使用迭代器以最小化缓冲,使其非常轻量级
| 归档时间: |
|
| 查看次数: |
15076 次 |
| 最近记录: |