QJson 的使用
下载 源码解压 https://github.com/flavio/qjson
复制 src 目录下所有 .h .cpp .hh 文件到项目目录 qjson,pro 文件添加 INCLUDEPATH += ./qjson
在工程中添加所有 qjson 下的源文件,由于编译会报错,不添加以下四个文件
serializerrunnable.h serializerrunnable.cpp
parserrunnable.h parserrunnable.cpp
编译并使用
解析 json 格式数据
{
"data": [
{
"id": "14314495",
"name": "cnblogs"
}
]
}
1 QByteArray content = QByteArray::fromBase64(f.readAll()); 2 f.close(); 3 4 QJson::Parser parser; 5 bool ok; 6 QVariant temp = parser.parse(content, &ok); 7 QVariantMap jsonMap = temp.toMap(); 8 foreach (QVariant var, jsonMap["data"].toList()) { 9 QVariantMap varMap = var.toMap(); 10 STask task; 11 task.id = varMap["id"].toString(); 12 task.name= varMap["name"].toString(); 13 }