-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathjson_utils.cpp
More file actions
22 lines (21 loc) · 838 Bytes
/
json_utils.cpp
File metadata and controls
22 lines (21 loc) · 838 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "json_utils.h"
#include <QJsonDocument>
#include <QDebug>
QJsonArray parseNetworkStructure(const QString& jsonStr) {//将JSON字符串解析为QJsonArray对象
QJsonDocument doc = QJsonDocument::fromJson(jsonStr.toUtf8());
QJsonArray layersArray;
if (doc.isObject()) {
QJsonObject obj = doc.object();
if(!jsonStr.contains("layers")){
qDebug()<<"Error from parseNetworkStructure:JSON object does not contain 'layers' field";
}
layersArray = obj["layers"].toArray();
}
return layersArray;
}
QString generateNetworkStructureJson(const QJsonArray& layersArray) {//将QJsonArray对象转化为JSON字符串
QJsonObject rootObj;
rootObj["layers"] = layersArray;
QJsonDocument doc(rootObj);
return QString::fromUtf8(doc.toJson());
}