当前位置:网站首页 > 技术博客 > 正文

xml如何生成



结论:rapidxml和pugixml在生成xml方面,我建议使用pugixml,优点很多,不用关心string的生命周期,像函数一样使用添加节点,属性,很方便;而且效率高,个人测试了下:生成300个xml文件,pugixml用时6s,rapidxml用时60+s,效率差了10倍

如果你工作必须使用rapidxml或者换起来麻烦,那么继续往下看,有关写xml需要注意的一些问题

rapidxml 下载:

在官网上下载即可,
http://rapidxml.sourceforge.net/
https://sourceforge.net/projects/rapidxml/

得到的压缩包里有文件如下:

在这里插入图片描述

这里补充下生成xml方面需要注意的问题:

1. 字符串的生命周期问题:每次添加节点,string需要使用rapidxml的内存申请函数

如果给节点赋值的是一个局部变量string或者char*,如果局部变量的生命周期,那么节点的值就会为空,建议使用rapidxml自带的方法来申请字符串内存,这样它的生命周期和节点的值必然是一致的了;

2. 节点包含中文的情况(这部分个人理解,如有不对,恳请斧正)

先说我们要写的xml文件如下:

 
 

如果你用的是,然后节点包含中文,这时候声明为:,那么生成的xml文件在浏览器里会报错,如下所示:
在这里插入图片描述
所以这里建议:如果你用的是,然后节点包含中文,使用这个声明;
当然最好的,是用,节点包含中文,就可以使用声明,不用担心编码解析问题

3. 节点写入int,float等类型的值

int, float,bool需要转换成char*字符串再写入节点,这里觉得使用不方便,不过还是提供下转换的函数如下,具体见下面代码里的函数

方式创建一个包含中文格式的xml文件

 

方式创建一个包含中文格式的xml文件


                            

  • 上一篇: C语言基础知识点
  • 下一篇: python3 文件
  • 版权声明


    相关文章:

  • C语言基础知识点2024-11-23 09:30:04
  • 聚合函数sql语句2024-11-23 09:30:04
  • select语句的语法结构2024-11-23 09:30:04
  • 哈夫曼树的原理2024-11-23 09:30:04
  • 数据库核心知识点2024-11-23 09:30:04
  • python3 文件2024-11-23 09:30:04
  • 什么是高并发,怎么处理高并发2024-11-23 09:30:04
  • arm处理器cortex系列2024-11-23 09:30:04
  • 软件应用发布2024-11-23 09:30:04
  • rsa加密算法其密钥长度需符合的最低安全要求是多少2024-11-23 09:30:04