- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想知道如何通过 QJsonObject
foreach
获取 C++ 中的键/值对?到目前为止,我只能获取值。
//main.cpp
QFile file(":/geoip.json");
file.open(QIODevice::ReadOnly);
QByteArray rawData = file.readAll();
file.close();
QJsonDocument doc(QJsonDocument::fromJson(rawData));
QJsonObject json = doc.object();
foreach(const QJsonValue &value, json) {
QJsonObject obj = value.toObject();
qDebug() << value;
}
//geoip.json
{
"Afghanistan": "58.147.159.255",
"Albania": "31.22.63.255",
"Algeria": "105.235.143.255",
"American Samoa": "202.70.115.241",
"Andorra": "109.111.127.255",
"Angola": "105.175.255.255",
"Anguilla": "208.66.50.44",
"Antarctica": "46.36.195.10"
}
最佳答案
约翰已经给出了答案。使用 keys() 一个完整的工作解决方案是:
#include <QCoreApplication>
#include <QFile>
#include <QByteArray>
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonValue>
#include <QDebug>
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
//main.cpp
QFile file("path/to/geoip.json");
file.open(QIODevice::ReadOnly);
QByteArray rawData = file.readAll();
file.close();
QJsonDocument doc(QJsonDocument::fromJson(rawData));
QJsonObject json = doc.object();
foreach(const QString& key, json.keys()) {
QJsonValue value = json.value(key);
qDebug() << "Key = " << key << ", Value = " << value.toString();
}
return a.exec();
}
关于c++ - Foreach 通过 QJsonObject 获取 Key/Value Pair,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40850552/
我是 JSON 的新手,我开始尝试使用它,但我根本无法保存任何 QJsonObject 或 QJsonArrays。我做对了吗,如果我想获得我的 QjsonObject 的 Json 格式,我必须序列
QJsonObject 不正常返回值。 json {"response":{"header":{"resultCode":"0000","resultMsg":"OK"},"body":{"items
在我的应用程序中,我使用 json 对象从远程数据库获取结果。通常响应字符串如下所示: { status:"ok", data: [ { field1:"value1"
我有一个我加载的 json 对象: QJsonObject json = CommonToolkit::Types::LoadJson(config); 这是json文件的部分内容: { "confi
与此链接相反,如何列出y和value的值: Qt JsonObjects and initializer lists -- deeper than one level? QJsonObject o {
我想在 Qt 中使用 Json,我在 QJsonObject 中的数据必须以某种特定的顺序排列,因为我们有一些通过 token 和获取 Json 哈希的确认方法。 因为 QJsonObject 按字母
我想以这种格式生成一个 qjsonstring: {"id": 1, "params":[1,2,3]} 但我不知道如何将多个值 [1,2,3] 添加到键“params” 这是我的代码: QJson
有一个QJsonObject { "a":"...", "b":"...", "c":"..." } 有没有一种方法可以检查这个对象是否
我想将多个 QJsonObject 添加到 QJsonDocument。这可能吗? 应该是这样的: [ { "objID": "obj1" //... Some
我正在编写几个测试函数,因为这是我第一次使用 Qt 并试图了解我开发最终项目所需的部分。以下是功能: #include "money.h" #include "ui_money.h" #include
我有一个 QJsonObject 数据并想转换为 QString。我怎样才能做到这一点?在Qt中搜索帮助,它只能将QJsonObject转换为QVariantMap ... 提前致谢。 最佳答案 记得
我有: QJsonObject obj1({"bla" : "lab"}) QJsonObject obj2({"bla2" : "lab2"}) 我需要: QJsonObject obj3({"bl
假设我有一个名为 groupBoxFlags(JSON 名称:flags)的 checkable QGroupBox,它有四个 QCheckBox将 checkBoxFlag1 命名为 checkBo
我正在尝试创建一个 json 文件,在其中我将 QjsonObjects 插入到唯一的一个 QJsonArray 中,我得到的是每个 QjsonObject 都在一个独立的 QJsonArray 中,
我对 Qt 很陌生,我想做一个非常简单的操作:我必须获得以下JSonObject: { "Record1" : "830957 ", "Properties" : [{
我想向 QJsonDocument 添加多个 QJsonObject 而不是 QJsonArray。这可能吗?它应该看起来像这样: { "Obj1" : { "objID":
是否可以使用 long long 作为 QJsonObject 的值?我被迫将我的 API 从 JSON 更改为 XML,因为我得到的 1 个字段有 BigInt 值,显然我无法从中提取大数字QJso
json 层次结构中任何级别的键,我如何在不知道路径中确切键的情况下找到该键? 最佳答案 通常,这可以通过递归函数(调用自身的函数)来解决。我们首先将文档的对象传递给它,然后检查对象的键。如果没有找到
作为 QJSValue 上的 qt 文档, QJsonObject不能隐式转换为 QJSValue , 我想用 QJSEngine 调用一个 javascript 函数在 C++ 中,参数应使用 QL
所以我有: QJsonArray nodeCollection; nodeCollection.push_back(ListElements(program, "title", "lang")); 我
我是一名优秀的程序员,十分优秀!