首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ArduinoJson中,如何检查在创建JSON文档时是否发生了错误?

在ArduinoJson中,如何检查在创建JSON文档时是否发生了错误?
EN

Stack Overflow用户
提问于 2019-12-24 07:23:57
回答 1查看 38关注 0票数 0

在JSON库中,很容易创建ArduinoJson条目,如下所示。

代码语言:javascript
复制
StaticJsonDocument<512> json_doc;

String some_string = "Hello there!";
json_doc["some_string"] = some_string;

问题是,检查条目是否已成功创建的最佳方法是什么?这将允许实现错误处理,如果创建的条目随着时间的推移而变化和增长,则可以快速发现错误。

EN

回答 1

Stack Overflow用户

发布于 2020-01-02 14:42:17

只需测试添加的节点是否具有非空值。如果在您尝试创建节点后,该节点的值为空值,则该节点未被创建。

这里有一个简单的草图来说明这个测试:

代码语言:javascript
复制
#include <ArduinoJson.h>

StaticJsonDocument<100> json_doc;
int nodeNumber = 0;
boolean ranOut = false;

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

void loop() {
  if (ranOut) return;

  String nodeName(nodeNumber++);
  String nodeContent = nodeName + " thing";
  json_doc[nodeName] = nodeContent;

  if (!json_doc[nodeName]) {
    ranOut = true;
    Serial.print("Ran out at ");
    Serial.println(nodeNumber);
  }
}

当我在我的Arduino Uno上运行这个Sketch时,它产生了:

代码语言:javascript
复制
Ran out at 6

也就是说,它成功创建了从json_doc"0“到json_doc"5”的节点,并在尝试创建json_doc"6“时耗尽了空间。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59462266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档