qjsondocument编码_QJsonDocument实现Qt下JSON文档读写

博客地址已更改,文章数量较多不便批量修改,若想访问源文请到 coologic博客 查阅,网址:www.coologic.cn

如本文记录地址为 techieliang.com/A/B/C/ 请改为 www.coologic.cn/A/B/C/ 即可查阅

版权声明:若无来源注明,Techie亮博客文章均为原创。 转载请以链接形式标明本文标题和地址:

本文标题:QJsonDocument实现Qt下JSON文档读写     本文地址:http://techieliang.com/2017/12/718/

1. 介绍

Qt提供了一系列类以供进行Json 文档的读写,分别为:

1.1. 错误分类

ConstantValueDescription

QJsonParseError::NoError

0

No error occurred

QJsonParseError::UnterminatedObject

1

An object is not correctly terminated with a closing curly bracket

QJsonParseError::MissingNameSeparator

2

A comma separating different items is missing

QJsonParseError::UnterminatedArray

3

The array is not correctly terminated with a closing square bracket

QJsonParseError::MissingValueSeparator

4

A colon separating keys from values inside objects is missing

QJsonParseError::IllegalValue

5

The value is illegal

QJsonParseError::TerminationByNumber

6

The input stream ended while parsing a number

QJsonParseError::IllegalNumber

7

The number is not well formed

QJsonParseError::IllegalEscapeSequence

8

An illegal escape sequence occurred in the input

QJsonParseError::IllegalUTF8String

9

An illegal UTF8 sequence occurred in the input

QJsonParseError::UnterminatedString

10

A string wasn’t terminated with a quote

QJsonParseError::MissingObject

11

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,您的问题是关于使用Json存储软件配置参数的方法。下面是一个简单的示例: 首先,您需要使用QtJson库来读取和写入Json文件。您可以使用QJsonDocument类来解析Json文件。 例如,以下是一个简单的Json文件: ```json { "window_title": "My Application", "window_width": 800, "window_height": 600, "language": "en" } ``` 接下来,您可以使用以下代码来读取Json文件并将其存储在QMap中: ```cpp QFile configFile("config.json"); if(configFile.open(QIODevice::ReadOnly | QIODevice::Text)) { QByteArray data = configFile.readAll(); QJsonDocument document = QJsonDocument::fromJson(data); if(document.isObject()) { QMap<QString, QVariant> configMap = document.toVariant().toMap(); QString title = configMap["window_title"].toString(); int width = configMap["window_width"].toInt(); int height = configMap["window_height"].toInt(); QString language = configMap["language"].toString(); } } ``` 这将创建一个QMap对象,其中包含从Json文件中读取的配置参数。您可以使用这些参数来设置应用程序的设置,例如窗口的标题,大小和语言。 接下来,您可以使用以下代码将配置参数写入Json文件: ```cpp QMap<QString, QVariant> configMap; configMap["window_title"] = "My Application"; configMap["window_width"] = 800; configMap["window_height"] = 600; configMap["language"] = "en"; QJsonDocument document = QJsonDocument::fromVariant(configMap); QFile configFile("config.json"); if(configFile.open(QIODevice::WriteOnly | QIODevice::Text)) { QTextStream out(&configFile); out << document.toJson(); } ``` 这将创建一个QMap对象,其中包含应用程序的配置参数,并将其转换为QJsonDocument。然后,它会将Json文档写入文件中。 希望这可以帮助您开始使用Json存储软件配置参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值