Json文件的读取
QFile file("data.json"); //准备好的文件file.open(QIODevice::ReadOnly|QIODevice::Text);QByteArray arr = file.readAll();QJsonDocument jsonDoc = QJsonDocument::fromJson(arr);QJsonObject jsonObj = jsonDoc.object();qint32 id = jsonObj["id"].toInt();QString glassid = jsonObj["Glassid"].toString();bool result = jsonObj["Result"].toBool();qDebug()<<id<<glassid<<result;
提前准备的文件内容:
Json文件的写入
//根据情况设定所需要的类,并实现tojson方法
class Person
{
public:Person();Person(int id,QString Glassid,bool Result);int Id;QString Glassid;bool Result;QJsonObject tojson()const{ //实现方法QJsonObject obj;obj["id"]=this->Id;obj["Glassid"]=this->Glassid;obj["Result"]=this->Result;return obj;}
};person = Person(10,"20310120727",false); //Person的构造函数QJsonObject obj1 = person.tojson();;QJsonDocument jsonDoc1(obj1);QFile file1("data.json");if(file1.open(QIODevice::WriteOnly|QIODevice::Text)){file1.write(jsonDoc1.toJson());file1.close();}else {qDebug()<<"失败";}
运行之后: