首页 > 其他分享 >QJsonObject与(QByteArray、QString)互相转换

QJsonObject与(QByteArray、QString)互相转换

时间:2022-10-31 21:05:12浏览次数:64  
标签:Compact QJsonObject QByteArray QJsonDocument jsonObject QString jsonDocument


QJsonObject CbActionSyncManager::getJsonObjectFromByteArray(const QByteArray jsonString)

{
QJsonDocument jsonDocument = QJsonDocument::fromJson(jsonString);
if( jsonDocument.isNull() ){
qDebug()<< "===> QJsonDocument:"<< jsonString;
}
QJsonObject jsonObject = jsonDocument.object();
return jsonObject
}


QByteArray CbActionSyncManager::getByteArrayFromJsonObject(const QJsonObject &jsonObject)

{
return QJsonDocument(jsonObject).toJson();
//注意,超长数据要用到QJsonDocument::Compact参数eg:...toJson(QJsonDocument::Compact);
//否则你会发现传过去的数据只传了一部分。
}


QJsonObject与QString的互相转换也是一样的。

QJsonObject CbActionSyncManager::getJsonObjectFromString(const QString jsonString)

{
QJsonDocument jsonDocument = QJsonDocument::fromJson(jsonString.toLocal8Bit().data());
if( jsonDocument.isNull() ){
qDebug()<< "===> QJsonDocument:"<< jsonString.toLocal8Bit().data();
}
QJsonObject jsonObject = jsonDocument.object();
return jsonObject;
}


QString CbActionSyncManager::getStringFromJsonObject(const QJsonObject &jsonObject)

{
return QString(QJsonDocument(jsonObject).toJson());//注意,超长数据要用到QJsonDocument::Compact参数eg:...toJson(QJsonDocument::Compact);
//否则你会发现传过去的数据只传了一部分。
}


标签:Compact,QJsonObject,QByteArray,QJsonDocument,jsonObject,QString,jsonDocument
From: https://blog.51cto.com/u_15854865/5811260

相关文章

  • qt QString 转float 精度问题
    在使用QString转float时,会发现结果float被自动增加精度问题。如QStringstr="23.2343",floatf=str.toFloat();结果可能是f=23.234299909...。如果我不想要那么高......
  • Qt-Qt QString toDouble 失败
    相关资料:https://blog.csdn.net/Time2017/article/details/126900752 1、问题:欧洲语言的操作系统中,调用QLineEdit.Text().toDouble(),产生错误;例如:“50,000”转为doub......
  • QByteArray类的介绍
    QByteArray可以存储原生的二进制数据和8位编码的文本数据。对于文件,即便是一个文本文件,读出时也可以按照二进制的形式读出,这就是二进制格式。如果把这些二进制的0、1串按照......