什么是最好的开放XML解析器C?

参见英文答案 > What XML parser should I use in C++?4个答案我正在寻找一个简单,干净,正确的XML解析器在我的C项目中使用。我应该自己写吗?
RapidXML怎么样? RapidXML是一个用C语言编写的非常快速和小型的XML DOM解析器。它主要针对嵌入式环境,计算机游戏或任何其他可用内存或CPU处理能力非常昂贵的应用程序。 RapidXML是根据Boost软件许可证授权的,其源代码是免费提供的。

特征

>解析速度(包括DOM树
建筑)接近速度
strlen函数执行
相同的数据。
>在现代CPU(2008年)
解析器的吞吐量约为10亿
字符/秒。看到
性能部分在线
手册。
>代码的内存占用量小
并创建DOM树。
>只有头的实现,
简化了集成过程。
>允许使用的简单许可证
几乎任何目的,都是商业
和非商业性,没有任何
义务。
>支持UTF-8和部分UTF-16,
UTF-32编码。
>可移植源代码,没有
依赖性非常小
C标准库子集。
>这个子集太小了,它可以
如果使用,容易被手动仿真
的标准库是不希望的。

限制

>解析器忽略DOCTYPE
声明。
>不支持XML命名空间。
>解析器不检查
字符有效性。
>解析器的接口没有
符合DOM规范。
>解析器不检查
属性唯一性。

资料来源:wikipedia.org://Rapidxml

根据您的使用,您可以使用XML数据绑定? CodeSynthesis XSD是由Code Synthesis开发的一个XML数据绑定编译器,并且是根据GNU GPL和专有许可证的双授权。给定一个XML实例规范(XML Schema),它生成表示给定词汇表以及解析和序列化代码的C类。

CodeSynthesis XSD的独特功能之一是它支持两种不同的XML模式到C映射:内存中C / Tree和面向流的C / Parser。 C / Tree映射是具有树状,内存中数据结构的传统映射。 C / Parser是一种新的类SAX映射,它将存储在XML实例文档中的信息表示为词汇特定解析事件的层次结构。与C / Tree相比,C / Parser映射允许处理不适合存储器,执行面向流的处理或使用现有的内存中表示的大型XML文档。

资料来源:wikipedia.org://CodeSynthesis XSD

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

相关推荐


php输出xml格式字符串
J2ME Mobile 3D入门教程系列文章之一
XML轻松学习手册
XML入门的常见问题(一)
XML入门的常见问题(三)
XML轻松学习手册(2)XML概念
xml文件介绍及使用
xml编程(一)-xml语法
XML文件结构和基本语法
第2章 包装类
XML入门的常见问题(二)
Java对象的强、软、弱和虚引用
JS解析XML文件和XML字符串详解
java中枚举的详细使用介绍
了解Xml格式
XML入门的常见问题(四)
深入SQLite多线程的使用总结详解
PlayFramework完整实现一个APP(一)
XML和YAML的使用方法
XML轻松学习总节篇