参数考太极创客的程序代码,将代码风格换成我习惯的用法,并在注释上加上自己的理解
单一对象JSON解析
JSON格式
{
"errno":0,
"error":"succ"
}
程序代码
#include <ArduinoJson.h>
程序void setup() {
Serial.begin(9600);
Serial.println("");
// 重点1:即将解析的json文件
String json ="{\"errno\":0,\"data\":{\"update_at\":\"2022-06-11 10:48:15\",\"id\":\"TEM\",\"create_time\":\"2022-06-10 20:15:36\",\"current_value\":45},\"error\":\"succ\"}";
Serial.println(String("")+"JSON大小:"+json.length());
// 重点2:解析的JSON数据大小
DynamicJsonDocument doc(json.length()*2); //解析的JSON数据大小
// 重点3:反序列化数据
deserializeJson(doc, json);
// 重点4:获取解析后的数据信息
String nameStr = doc["update_at"].as<String>();
int numberInt = doc["errno"].as<int>();
// 通过串口监视器输出解析后的数据信息
Serial.print("errorStr = ");Serial.println(nameStr);
Serial.print("errnoInt = ");Serial.println(numberInt);
}
void loop() {
}
进阶一点,JSON是这种形式的
{
"errno":0,
"data":{
"upd

本文指导如何在ArduinoJson库下,根据给定的JSON格式,提取并打印【data】和【results】下的子字段,如【update_at】,【id】,【create_time】,【text】,【current_value】等,适合初学者调整代码风格。
1572

被折叠的 条评论
为什么被折叠?



