使用Qt C++代码解析json: "GlobalNotes": [{ "Notes": "854674G-R:使用320gPPG" }, { "Notes": "充电:1.2C-4.15V,1C-4.2V,0.7C-4.25V,0.45C-4.4V,0.05C截止(20~45℃)\r\n放电:0.5C放到3V 截止(2-49T,51-99T,101th~149th......)0.2C放到3V测容量(第1,50,100,150…以及以后每整50次时);" }, { "Notes": "降压:\r\n1-100T:4.4V;101-150T:4.39V;151-200T:4.37V;201-250T:4.35V;251-1000T:4.34V;> 1000T:4.29V。" }, { "Notes": "1、在0、2、51、101、151、201…1001(每50T)测试过程数据:容量、能量、电压、内阻、厚度\r\n2、每次测试之前电芯在对应温度至少静置2H(不超过24H)\r\n3、0.5C放电前静置10min,放电后静置20min,\r\n4、0.2C放电前静置2H,放电后静置5H" }]
时间: 2023-07-07 12:06:04 浏览: 125
可以使用Qt提供的QJsonDocument和QJsonObject类来解析json。具体代码如下:
```c++
#include <QJsonDocument>
#include <QJsonObject>
#include <QJsonArray>
#include <QDebug>
QString jsonStr = "{\"GlobalNotes\":[{\"Notes\":\"854674G-R:使用320gPPG\"},{\"Notes\":\"充电:1.2C-4.15V,1C-4.2V,0.7C-4.25V,0.45C-4.4V,0.05C截止(20~45℃)\\r\\n放电:0.5C放到3V 截止(2-49T,51-99T,101th~149th......)0.2C放到3V测容量(第1,50,100,150…以及以后每整50次时);\"},{\"Notes\":\"降压:\\r\\n1-100T:4.4V;101-150T:4.39V;151-200T:4.37V;201-250T:4.35V;251-1000T:4.34V;> 1000T:4.29V。\"},{\"Notes\":\"1、在0、2、51、101、151、201…1001(每50T)测试过程数据:容量、能量、电压、内阻、厚度\\r\\n2、每次测试之前电芯在对应温度至少静置2H(不超过24H)\\r\\n3、0.5C放电前静置10min,放电后静置20min,\\r\\n4、0.2C放电前静置2H,放电后静置5H\"}]}";
QJsonDocument doc = QJsonDocument::fromJson(jsonStr.toUtf8());
QJsonObject obj = doc.object();
QJsonArray globalNotesArr = obj.value("GlobalNotes").toArray();
for (int i = 0; i < globalNotesArr.size(); i++) {
QJsonObject notesObj = globalNotesArr.at(i).toObject();
QString notes = notesObj.value("Notes").toString();
qDebug() << notes;
}
```
输出结果为:
```
"854674G-R:使用320gPPG"
"充电:1.2C-4.15V,1C-4.2V,0.7C-4.25V,0.45C-4.4V,0.05C截止(20~45℃)\r\n放电:0.5C放到3V 截止(2-49T,51-99T,101th~149th......)0.2C放到3V测容量(第1,50,100,150…以及以后每整50次时);"
"降压:\r\n1-100T:4.4V;101-150T:4.39V;151-200T:4.37V;201-250T:4.35V;251-1000T:4.34V;> 1000T:4.29V。"
"1、在0、2、51、101、151、201…1001(每50T)测试过程数据:容量、能量、电压、内阻、厚度\r\n2、每次测试之前电芯在对应温度至少静置2H(不超过24H)\r\n3、0.5C放电前静置10min,放电后静置20min,\r\n4、0.2C放电前静置2H,放电后静置5H"
```
阅读全文