构建json
QJsonObject json;
json.insert("type", "m.login.password");
json.insert("user", "example");
json.insert("password", "wordpass");
// 构建 JSON 文档
QJsonDocument document;
document.setObject(json);
QByteArray byteArray = document.toJson(QJsonDocument::Compact);
QString strJson(byteArray);
解析json
QByteArray result;
// 解析数据
QJsonParseError jsonError;
// 转化为 JSON 文档
if (!doucment.isNull() && (jsonError.error == QJsonParseError::NoError)) {
// 解析未发生错误
if (!doucment.isNull() && (jsonError.error == QJsonParseError::NoError)) {
// JSON 文档为对象
if (doucment.isObject()) {
QJsonObject object = doucment.object(); // 转化为对象
if (object.contains("user_id")) { // 包含指定的 key
QJsonValue value = object.value("user_id"); // 获取指定 key 对应的 value
if (value.isString()) { // 判断 value 是否为字符串
QString user_id = value.toString(); // 将 value 转化为字符串
std::cout<<"解析用户ID:"<<user_id.toStdString()<<std::endl;
}
}
}
}
}
else
{
QString errStr = jsonError.errorString();
}