QVariantMap top; top.insert("ADDR",100 + ui->cmbPlugAmt->currentIndex()); top.insert("READ","CMS"); QJson::Serializer serializer; bool Result; QByteArray json = serializer.serialize(top, &Result); 如何去除空格
时间: 2024-03-15 15:43:49 浏览: 103
在这段代码中,`json` 是一个 `QByteArray` 类型的变量,存储了一个 JSON 字符串。要去除 JSON 字符串中的空格,可以使用 `QJsonDocument` 类进行处理。具体操作如下:
1. 通过 `QJsonDocument::fromJson()` 函数将 `json` 字符串转换成 `QJsonDocument` 类型的对象。
2. 调用 `QJsonDocument::toJson()` 函数将 `QJsonDocument` 类型的对象转换成字符串,其中可以设置 `QJsonDocument::Compact` 参数来去除空格。
下面是修改后的代码:
```
QJson::Serializer serializer;
bool Result;
QByteArray json = serializer.serialize(top, &Result);
// 将 JSON 字符串转换成 QJsonDocument 对象
QJsonParseError jsonError;
QJsonDocument jsonDoc = QJsonDocument::fromJson(json, &jsonError);
if (jsonError.error != QJsonParseError::NoError) {
qDebug() << "JSON parse error:" << jsonError.errorString();
}
// 将 QJsonDocument 对象转换成去除空格的 JSON 字符串
QByteArray compactJson = jsonDoc.toJson(QJsonDocument::Compact);
```
执行完上述代码后,`compactJson` 中存储的就是去除空格的 JSON 字符串。
阅读全文