好吧,其实真正最高效的xml使用方式是不使用xml,使用json或者是ini或者是自定义格式都要比xml快很多。
如果使用xml格式的话,可以考虑对xml进行二进制压缩,即把xml当做内存数据直接读到结构体里面。(参考ogre cocosbuilder的实现)不过这样就需要xml与程序严格匹配。
原始xml解析库的话,rapidxml是最快的。 我测试了cocs2d-x使用的libxml2(SAX模型)和rapidxml(DOM模型),rapidxml依然以压倒性的优势取胜。
读取并遍历一个400k的xml文件,libxml2用了500ms,rapidxml用了150ms。
XML解析效率:JSON、INI与自定义格式对比
文章对比分析了XML与其他格式(如JSON、INI等)在使用效率上的差异,特别强调了使用rapidxml作为解析库的优势,并讨论了XML二进制压缩与程序匹配的必要性。
1092

被折叠的 条评论
为什么被折叠?



