关 JSON 的简单说明
JSON 的基本数据类型有 6 种:
- object
- array
- string
- double
- bool
- null
注意:
double 不需要引号包围, 如
{ "这是 double 类型" : 18, "这是 string 类型" : "18" }
bool 不需要引号包围, 如
{ "这是 bool 类型" : true, "这是 string 类型" : "true" }
null 不需要引号包围, 如
{ "这是 null 类型" : null, "这是 string 类型" : "null" }
个人以为, JSON 文档只有两种类型: object 或 array. 无非是 object 中可以包含
array, array 的元素也可以是 object. 事实上, QT 中的 QJsonDocument
类只有通过成员函数获得对象(object) 或 数组 (array):
QJsonArray QJsonDocument::array() const
QJsonObject QJsonDocumen::object() const
QT 中用于处理 JSON 的相关类
类 | 描述 |
---|---|
QJsonDocument | 封装了整个 JSON 文档 |
QJsonObject | 用来表示 JSON 数据类型中的 object |
QJsonArray | 用来表示 JSON 数据类型中的 array |
QJsonValue | 表示 JSON 文档中的一个值, 可以是上述的 6 种数据类型之一 |
QJsonParseError | 用来表示解析 JSON 文档时发生的错误 |
QJsonDocument
此类封装了一个 JSON 文档. JSON 文档或字串可以有两种表现方式, 缩进型或紧凑型.
- 缩进型
{
"Array": [
true,
999,
"string"
],
"Key": "Value",
"null": null
}
- 紧凑型
{"Array":[true,999,"string"<