qt中操作json,读取json,写入json,转换json

一、说明

先要明白json是什么,json说白了就是键值对形式的数据格式,key是字符串,值可以是对象、数组、字符串、基础数据类型等,主要用于场景是,前后端数据传输,作为项目配置文件,比如web端比较流行的vue,相比于xml格式的优点是体积更轻,更简洁,单位携带数据更多等特点,现在json格式已经说是应用非常广泛了。json格式的内容中不能出现注释,不然无法解析,相比于xml可以注释,这个也可以说是个遗憾,毕竟json属于轻量级文本,但是我们可以通过一些特殊处理达到注释的要求,这样,对于文本我们也就更容易理解,比如,web前端的webpack在解析配置json文件时就针对注释做了处理。

二、qt使用json

说回正题,qt中我们用qjson来进行解析。首先要使用需要引入相关头文件

#include <qjsondocument.h>
#include <qjsonobject.h>

1、读取json文件

以读取下面这个文件内容为例:

/* 目前只支持 (左斜杠* + *左斜杠) 作为注释,且不能交替,即注释(左斜杠* + *左斜杠)里面不能包含(左斜杠* + *左斜杠)嵌套 */
/* qt要成功使用mysql:请参考:https://blog.youkuaiyun.com/IT_CREATE/article/details/119155290?spm=1001.2014.3001.5501 */
{
  "dataBaseDrive":"mysql", /* sql驱动名,当前支持mysql、sqllite */
  "dataBaseNameParam":{ /* 数据库名称设置 */
    "names":["infosystem", "infosystem.db"], /* 数据库名称集合 */
    "useIndex":0 /* 需要连接使用的数据库名称所在索引值,从0开始,从上面的数据库名称数组中取;本项目中请遵循mysql使用不含.db后缀名称 , sqlite 使用含.db后缀名称 */
  },
  "dataBaseHostName":"localhost", /*  mysql所在服务器ip,(sqllite不会使用)*/
  "dataBasePort":3306, /*  mysql连接端口,(sqllite不会使用) */
  "dataBaseUserName":"root", /*  mysql连接用户名,(sqllite不会使用) */
  "dataBasePassWord":"root", /*  mysql连接密码,(sqllite不会使用) */
  "projectFirstStartLoadDefaultTableData":true  /* 项目第一次启动是否加载默认数据,本项目的默认数据是学生表信息*/
}

要点就是:

1)通过QFile读出文件内容,这时候是字符串,如果有注释&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值