Я использую Arduino UNO, и мне нужно разобрать файл JSON, который может быть довольно большим, учитывая, что микроконтроллер имеет только 2k SRAM. Я нашел эту библиотеку (stream_json_reader), которая может обрабатывать символ файла char и, по-видимому, подходит для моих пор. Проблема в том, что я не могу понять, как правильно импортировать его в Arduino IDE. Пока у меня есть папка Documents/Arduino/libraries
с stream_json_reader
и stringutils
(доступно here). Я изменил файл stream_json_reader.h
, чтобы указать на cstringutils.h
(#include "C:/Users/MY_NAME/Documents/Arduino/libraries/stringutils/cstringutils.h"
).Ошибка импорта библиотек в Arduino IDE
Мой код выглядит примерно так:
#include "stream_json_reader.h"
#include "stringutils.h"
#include <SPI.h>
#include <Ethernet.h>
using namespace lasote;
static const char* queries[] = { "response.current_observation.city", "response.current_observation.temp_c"};
StreamJsonReader jsonreader(queries, 2);
[...]
void setup() {
// Retrieving JSON file
[...]
}
void loop()
{
[...]
jsonreader.process_char(c);
[...]
Serial.println(jsonreader.results[0]);
Serial.println(jsonreader.results[1]);
}
Но я получаю: ...stringutils/stringutils.h:18: error: expected initializer before '<' token
У меня есть почти нулевой опыт работы с Arduino и C++. Я не знаю, если проблема связана с некоторыми #include
или если я неправильно разместил файлы библиотеки.
Заранее спасибо.
Ошибка, похоже, находится на 18-й строке файла заголовка stringutils.h. Можете ли вы опубликовать этот файл? – afic
Доступно [здесь] (https://www.biicode.com/lasote/lasote/stringutils/master/5/stringutils.h). – Mike