Benoit Blanchon 37357086e2 Remove the zero-copy mode
After removing the string size from `VariantContent`, `deserializeJson()` and `deserializeMsgPack()` could not support NUL in strings in the zero-copy mode anymore.
Instead of adding a complicated warning in the documentation, I thought it was better to remove the zero-copy mode entirely.
The zero-copy mode has always been a source of bugs because many users used it without realizing it.
Also, the memory savings are smaller now that we deduplicate strings, so this feature should not be missed much.
2023-05-10 09:55:21 +02:00
2023-02-10 17:02:51 +01:00
2023-05-10 09:55:21 +02:00
2023-05-10 09:55:21 +02:00
2021-04-27 18:25:42 +02:00
2023-03-28 14:45:55 +02:00
2023-02-16 11:45:01 +01:00
2023-05-10 09:55:21 +02:00
2023-03-28 14:45:55 +02:00
2019-10-07 09:00:31 +02:00
2023-04-17 10:42:08 +02:00
2023-02-16 11:45:01 +01:00
2023-04-17 10:42:08 +02:00
2018-01-15 10:22:04 +01:00

ArduinoJson


GitHub Workflow Status Continuous Integration Fuzzing Status Coveralls branch
GitHub stars GitHub Sponsors

ArduinoJson is a C++ JSON library for Arduino and IoT (Internet Of Things).

Features

Quickstart

Deserialization

Here is a program that parses a JSON document with ArduinoJson.

char json[] = "{\"sensor\":\"gps\",\"time\":1351824120,\"data\":[48.756080,2.302038]}";

JsonDocument doc(1024);
deserializeJson(doc, json);

const char* sensor = doc["sensor"];
long time          = doc["time"];
double latitude    = doc["data"][0];
double longitude   = doc["data"][1];

See the tutorial on arduinojson.org

Serialization

Here is a program that generates a JSON document with ArduinoJson:

JsonDocument doc(1024);

doc["sensor"] = "gps";
doc["time"]   = 1351824120;
doc["data"][0] = 48.756080;
doc["data"][1] = 2.302038;

serializeJson(doc, Serial);
// This prints:
// {"sensor":"gps","time":1351824120,"data":[48.756080,2.302038]}

See the tutorial on arduinojson.org

Sponsors

ArduinoJson is thankful to its sponsors. Please give them a visit; they deserve it!

Programming Electronics Academy

1technophile

If you run a commercial project that embeds ArduinoJson, think about sponsoring the library's development: it ensures the code that your products rely on stays actively maintained. It can also give your project some exposure to the makers' community.

If you are an individual user and want to support the development (or give a sign of appreciation), consider purchasing the book Mastering ArduinoJson ❤, or simply cast a star .

S
Description
📟 JSON library for Arduino and embedded C++. Simple and efficient.
Readme 8.2 MiB
Languages
C++ 97.9%
CMake 1.6%
Shell 0.4%