Member 13358124 Ответов: 1

Как десериализовать документ JSON с помощью witharduinojson.


Я хочу десериализовать этот JSON и получить имя,проблемы,общий счет в последовательном мониторе.Но я получаю только 0 в качестве вывода...

{
"name": "ArduinoJson",
"stargazers": {
"totalCount": 3415
},
"issues": {
"totalCount": 21
}
}


В чем заключается ошибка в моем коде?

Что я уже пробовал:

#include <ArduinoJson.h>
DynamicJsonDocument doc(2000);
String j;

const char* name = doc["name"];
long stars = doc["stargazers"]["totalCount"];
int issues = doc["issues"]["totalCount"];

void setup() {
  Serial.begin(9600);
}

void loop() {
 if (Serial.available()){
  j=Serial.readString();
   deserializeJson(doc,j);
 }

Serial.println(name);   
Serial.println(stars);
Serial.println(issues);

 delay(1000);

}

1 Ответов

Рейтинг:
9

CPallini

Я не специалист, но.....
Сформируйте этот пример кода библиотеки JsonParserExample.ino | ArduinoJson 6[^] очевидно, что первый вы должны десериализовать и затем вы можете получить значения (например, stars = doc["stargazers"]["totalCount"];).
Пример кода также показывает, как обрабатывать ошибки десериализации.


Member 13358124

Спасибо...

CPallini

Добро пожаловать.