arduino JSON数据信息解析

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

参数考太极创客的程序代码,将代码风格换成我习惯的用法,并在注释上加上自己的理解

单一对象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
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值