以故事方式来学习如何使用Qt接口来操作JSON数据。
JSON三兄弟
老大哥QJsonValue主要用于封装JSON值,类似于QVariant。
它能够存储以下值:与QVariant互转
QJsonValue fromVariant(const QVariant &variant)
QVariant QJsonValue::toVariant() const可以与QJsonObject,QJsonArray互转
QJsonValue::QJsonValue(const QJsonArray &a)
QJsonObject QJsonValue::toObject() const
QJsonValue::QJsonValue(const QJsonObject &o)
QJsonArray QJsonValue::toArray() const
二哥QJsonObject负责封装JSON对象,是键/值对列表,其中键是惟一的字符串,值由QJsonValue表示。
QJsonObject与QVariantMap可以互相转换。
接口与QMap相似,都具有size()、insert()和remove()等操作,还可以使用标准C++迭代器模式对其内容进行迭代。
直接构造使用:
QJsonObject jsonObject
{
{"key1", 1},
{"key2", 6.6},
{"key3", "Hello world"},
{"array"