如何将QJsonObject转换为QString

gog*_*000 25 qstring qt qjsonobject

我有一个QJsonObject数据,并希望转换为QString.我怎样才能做到这一点?在Qt中搜索过帮助,它只能将QJsonObject转换为QVariantMap ...

提前致谢.

The*_*ght 59

记住当我第一次需要这样做时,文档可能有点缺乏,并假设您已了解其他QJson类.

要获取QJsonObject的QString,需要使用QJsonDocument类,如下所示: -

QJsonObject jsonObj; // assume this has been populated with Json data

QJsonDocument doc(jsonObj);
QString strJson(doc.toJson(QJsonDocument::Compact));
Run Code Online (Sandbox Code Playgroud)

  • 应该提到的是,QJsonDocument :: toJson()返回的是UTF-8格式的QByteArray。 (2认同)

Say*_*yAz 6

我们可以用一行来做这件事

QString strFromObj = QJsonDocument(jsonObject).toJson(QJsonDocument::Compact).toStdString().c_str();
Run Code Online (Sandbox Code Playgroud)

  • 或者只是 `QString strFromObj = QJsonDocument(jsonObject).toJson(QJsonDocument::Compact);` (2认同)