过滤JSON数据arduino

时间:2019-04-20 09:27:09

标签: json arduino esp8266

我正在尝试使用Arduin过滤JSON数据(使用ESP8266)。 这就是我所拥有的:

if (httpCode > 0) {
  // Parsing
  const size_t bufferSize = JSON_OBJECT_SIZE(2) + JSON_OBJECT_SIZE(3) + JSON_OBJECT_SIZE(5) + JSON_OBJECT_SIZE(8) + 370;
  DynamicJsonBuffer jsonBuffer(bufferSize);
  JsonObject& root = jsonBuffer.parseObject(http.getString());
  // Parameters
  int id = root["Reismogelijkheid"];
  const char* departure = root["ActueleVertrekTijd"];
  // Output to serial monitor
  Serial.print("Vertrijktijd:");
  Serial.println(departure);
}

我可以连接到我的wifi网络,也可以连接到网站以从此处获取JSON数据:http://hendriks.pm/ns.php,但我想过滤数据并仅获取 ActueleVertrekTijd ,这样我就可以将其存储在const中,并可以在串行监视器上看到它。

我尝试使用以下示例:https://www.instructables.com/id/ESP8266-Parsing-JSON/,但这对我没有用。

这是杰森(Json):

enter image description here

1 个答案:

答案 0 :(得分:2)

您好,欢迎来到Stackoverflow

问题是您没有遍历JSON。 如果要获取对象的值,则应使用

root["Reismogelijkheid"]["ActueleVertrekTijd"]

或是否一致:

root["Reismogelijkheid"][5]

代替

root["Reismogelijkheid"]

这将为您提供所需的价值。

编辑

有关解析JSON的更多信息,您可以使用以下站点: https://randomnerdtutorials.com/decoding-and-encoding-json-with-arduino-or-esp8266/