c_cpp qt读取json文件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c_cpp qt读取json文件相关的知识,希望对你有一定的参考价值。
void RollCallSystem::readJson()
{
QJsonDocument m_json;
QJsonObject m_object;
QFile file;
file.setFileName(":/setting/data.json");
if (!file.open(QIODevice::ReadOnly | QIODevice::Text))
{
QMessageBox::warning(this, "warning", "can not open this file");
return;
}
m_json = QJsonDocument::fromJson(file.readAll());
m_object = m_json.object();
QJsonArray m_names = m_object.value("person_name").toArray();
foreach (auto i, m_names) {
name_data.append(i.toString());
}
file.close();
}
http->get(request);
}
void Dict::replyfinished(QNetworkReply *reply)
{
QJsonDocument m_json;
QJsonObject m_object, m_data, m_pron, m_audio;
QByteArray wordInformation = reply->readAll();
m_json = QJsonDocument::fromJson(wordInformation);
if (!m_json.isNull())
{
m_object = m_json.object();
m_data = m_object.value("data").toObject();
m_pron = m_data.value("pronunciations").toObject();
m_audio = m_data.value("audio_addresses").toObject();
name = m_data.value("content").toString();
ukPron = m_data.value("uk").toString();
usPron = m_data.value("us").toString();
chinese = m_data.value("definition").toString();
ukAudio = m_audio.value("uk").toString();
usAudio = m_audio.value("us").toString();
}
QString message = m_object.value("msg").toString();
emit signalQueryFinished(name, ukPron, usPron, chinese, ukAudio, usAudio, message);
}
以上是关于c_cpp qt读取json文件的主要内容,如果未能解决你的问题,请参考以下文章
如何解析这个 JSON 文件? (Qt)
使用非 Qt 从 Qt QJsonDocument::toBinaryData 读取二进制 Json?
更新 QJsonArray 中的值并写回 Qt 中的 Json 文件
c_cpp 创建文件和读取文件
在 Qml 和 javascript 中动态读取配置文件(javascript 文件或 json 文件)
c_cpp 从文件中读取