微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

XML解析库比较

xml4c ------http://www.alphaworks.ibm.com/tech/xml4c
  IBM的XML Parser,用c++语言写就,功能超级强大。号称支持多达100种字符编码,能够支持中文
适合于大规模的xml应用。若只是很小范围的应用,则非最佳选择,毕竟,你需要“背负”约12M左右的
dll的沉重负担

Xerces c++ -------http://xml.apache.org/xerces-c
  Apache的XML项目,同样是c++ 实现,来源于IBM的xml4c,因此编程接口也是和xml4c一致的。但是
目前只支持少数的字符编码,如ASCII,UTF-8,UTF-16等,不能处理包含中文字符的XML文档。
Xerces-C++ 是一个非常健壮的XML解析器,它提供了验证,以及SAX和DOM API。XML验证在文档类型定
义(Document Type DeFinition,DTD)方面有很好的支持,并且在2001年12月增加支持W3C XML Schema
的基本完整的开放标准。

XMLBooster -------http://www.xmlbooster.com/
这个库通过产生特制的parser的办法极大的提高了XML解析的速度,并且能够产生相应的GUI程序
修改这个parser。在DOM和SAX两大主流XML解析办法之外提供了另外一个可行的解决方案。

libxmL++ ----------- http://libxmlplusplus.sourceforge.net/
libxmL++是对著名的libxml XML解析器的C++封装版本

TinyXML -----http://sourceforge.net/

inyXML一个开源的解析XML的解析库,能够用于C++,能够在WindowsLinux中编译。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。

可能因为微软、IBM这样的商业公式和开源社区在数据表达方面的不谋而合,以及再加上W3C推波助澜XML的相关技术总是和应用结合得非常紧密。XML从产生就不乏优秀的工具。在最近一个项目中,我们就使用了原生的XML存储数据库Berkely DBXML(BDB)。
其实,DBXML使用了大量优秀的开源工具来实现,其中数据存储使用Berkely DB,XML解析使用XercesC,XPath的实现使用Pathan(2.3以前),XQilla(2.3以后)。关于这几个库,我将官方网站的介绍摘录如下:

  1. Xerces-C++ is a validating XML parser written in a portable subset of C++. Xerces-C++ makes it easy to give your application the ability to read and write XML data. A shared library is provided for parsing,generating,manipulating,and validating XML documents.
  2. Pathan is a open source library which allows developers using Xerces-C to parse and evaluate XPath expressions for XML node selection.
  3. XQilla is an XQuery and XPath 2 library and command line utility written in C++,implemented on top of the Xerces-C. XQilla is originally based on an open source project called Pathan,that was hosted by Decisionsoft and implemented XPath 2. However,XQilla has been developed and improved considerably from the Pathan code base.
  4. Xalan is an XSLT processor for transforming XML documents into HTML,text,or other XML document types

在接下来的工作中,我们希望把存储的XML表达出来。我们通过XSL来实现XML的表达,有趣的是XSL 本身也是XML,又是一个有趣的递归。 把DBXML与XSL联系起来。我们找到了一个DBXML API中函数,他可以将XML Node 以Xerces DOMDocument 方式返回:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类