В моём QT aplication есть необходимость хранить значение структур одного типа в JSON словаре.
Про статью
JSON Save Game Example знаю, пытался долго разобраться, ни к чему не пришёл, форумы тоже все облазил с таким же результатом.
Основная проблема заключается в следующем:
Есть JSON документ:
spoiler{
"devices": [
{
"name": "some name",
"price": 0,
"year": 0
}
]
}
Использую следующий код чтобы считать информацию:
spoiler//open my JSON
QFile file("path/to/myfile.json");
file.open(QIODevice::ReadOnly);
QByteArray jsonData = file.readAll();
//finding array
QJsonDocument document = QJsonDocument::fromJson(jsonData);
QJsonObject object = document.object();
QJsonArray temp_array = object["devices"].toArray();
qDebug() << temp_array[0].toObject().value("name").toString(); //returned ""
qDebug() << temp_array.size(); //returned 0
qDebug() << temp_array.empty(); //returned true
qDebug() << object.keys(); //returned QList("devices")
Как я ранее указал в комментарии, попытка считать значения ключа "name" вернуло мне пустую строку, а функции size и empty указывают на то, что я просматриваю пустой массив. Однако функция keys указывает на то, что мой json объект всё же содержит ключ "devices".
В чём проблема может быть?