Как получить несколько объектов ND JSON из одного файла с помощью Arduino Json? - PullRequest
1 голос
/ 29 мая 2020

Я пытаюсь использовать Arduino Json для анализа набора данных Google Quickdraw, который содержит файлы .nd json с несколькими объектами внутри. Я понял, как получить первый из объектов в файле, используя следующий простой код:

DeserializationError deserialization_error = ArduinoJson::deserializeJson(doc, as_cstr);
if (deserialization_error) {
    printf("deserializeJson() failed: %s\n", deserialization_error.c_str());
}

Однако это анализирует только первый объект в файле nd json.

Согласно веб-сайту , я чувствую, что что-то еще должно произойти автоматически:

NDJSON, JSON Lines
When parsing a JSON document from an input stream, ArduinoJson stops reading as soon as the document ends (e.g., at the closing brace).

This feature allows to read JSON documents one after the other; for example, it allows to read line-delimited formats like NDJSON or JSON Lines.

{"event":"add_to_cart"}
{"event":"purchase"}

Есть ли способ получить длину в байтах проанализированного объекта, чтобы я мог продолжать использовать cstring для анализа последовательных объектов? Я распечатал cstring, и он содержит весь файл nd json.

1 Ответ

0 голосов
/ 12 июля 2020

Я нашел.

просто позвоните несколько раз:

  DeserializationError error = deserializeJson(doc, sceneFile);

или:

  deserializeJson(docline1, sceneFile);

  deserializeJson(docline2, sceneFile);

  deserializeJson(docline3, sceneFile);
...