QJsonArray如何去掉一个元素
时间: 2024-03-14 17:47:09 浏览: 301
在 Qt 中,可以使用 `QJsonArray` 类的 `removeAt` 函数来删除一个指定位置的元素,也可以使用 `remove` 函数来删除指定值的元素。以下是两种方法的示例代码:
```c++
#include <QJsonArray>
#include <QJsonObject>
#include <QJsonDocument>
#include <QVariant>
int main() {
// 创建一个包含多个元素的 JSON 数组
QJsonArray jsonArray;
jsonArray.append(QJsonValue(1));
jsonArray.append(QJsonValue(2));
jsonArray.append(QJsonValue(3));
jsonArray.append(QJsonValue(4));
jsonArray.append(QJsonValue(5));
// 删除指定位置的元素
jsonArray.removeAt(2); // 删除索引为 2 的元素,即删除值为 3 的元素
// 删除指定值的元素
jsonArray.remove(QJsonValue(5)); // 删除值为 5 的元素
// 将 JSON 数组序列化为字符串输出
QJsonDocument doc(jsonArray);
QString jsonString = QString::fromUtf8(doc.toJson());
qDebug() << "jsonString:" << jsonString;
return 0;
}
```
在上述代码中,我们首先创建一个包含多个元素的 JSON 数组,然后使用 `removeAt` 函数删除了索引为 2 的元素(即值为 3 的元素),使用 `remove` 函数删除了值为 5 的元素。最后,我们将 JSON 数组序列化为字符串并输出。
阅读全文