QT读JSON文件步骤,这里把过程记录一下,网上大多都是怎么写json的,对于读的,记录的很少json
#include <QJsonDocument> #include <QJsonObject> #include <QJsonParseError>
#include <QFile> QFile file("./ServerConfig.json"); if(file.open(QIODevice::ReadWrite | QIODevice::Text))//打开文件 { QByteArray fileContent = file.readAll().data();//提取文本信息 }
QJsonParseError err; //Json 解析错误类 QJsonObject jsonObj = QJsonDocument::fromJson(fileContent,&err).object();//将json解析成对象 if(jsonObj.isEmpty())//检查json是否合法(是否为空) { cout <<"[!!!]Abort!Config file Parsing Error"<<endl; cout << err.errorString().toStdString()<< endl; //Json 解析错误信息 return;//当错误时,返回 } else { QStringList keys = jsonObj.keys(); //取出关键词列表,若是你的json是动态的,那么须要靠这个列表取表项 } if(jsonObj.contains("global"))//global项是否存在 { jsonObj.value("global").toString();//取出这个项的内容 }
【若JSON为多层嵌套结构,则toString改成toObject,而后,再逐层查找】code