暫無描述

Benoit Blanchon ccfbb5fd1d Fix `9.22337e+18 outside range of representable values of type 'long'` 3 年之前
.github 47f90b02c3 CI: run `apt-get update` before installing `g++-multilib` 3 年之前
.vscode 7f5497db55 VSCode: exclude catch/ from search 4 年之前
examples af18994deb Update copyright notice 4 年之前
extras ccfbb5fd1d Fix `9.22337e+18 outside range of representable values of type 'long'` 3 年之前
src ccfbb5fd1d Fix `9.22337e+18 outside range of representable values of type 'long'` 3 年之前
.clang-format 4e261068a1 clang-format: set IndentPPDirectives to AfterHash 4 年之前
.gitattributes e31d667bec Added support of comments in JSON input (issue #88) 10 年之前
.gitignore 055304bf01 Ignore Visual Studio's `/out/` folder 4 年之前
.mbedignore 803e07c188 Updated folders list in `.mbedignore` (closes #1515) 4 年之前
.prettierignore 506cf7f438 Added .prettierignore 4 年之前
ArduinoJson.h af18994deb Update copyright notice 4 年之前
CHANGELOG.md ccfbb5fd1d Fix `9.22337e+18 outside range of representable values of type 'long'` 3 年之前
CMakeLists.txt 67b6797b6d Set version to 6.19.4 3 年之前
CONTRIBUTING.md 3975b07371 Moved CI from Travis to GitHub Actions (fixes #1493) 5 年之前
LICENSE.md af18994deb Update copyright notice 4 年之前
README.md c9fbc5e40a README: remove utm_source/utm_medium to make links more readable (#1735) 3 年之前
SUPPORT.md fbfdca1de9 Added campaign information in links 8 年之前
appveyor.yml 67b6797b6d Set version to 6.19.4 3 年之前
banner.svg d6e61cbcda Added banner with the new logo 8 年之前
component.mk b261eca865 esp-idf make system 6 年之前
keywords.txt 6b26cd0977 Add JsonDocument to keywords.txt 5 年之前
library.json 67b6797b6d Set version to 6.19.4 3 年之前
library.properties 67b6797b6d Set version to 6.19.4 3 年之前

README.md

ArduinoJson


GitHub Workflow Status Continuous Integration Fuzzing Status LGTM Grade Coveralls branch
Arduino Library Manager PlatformIO Registry 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]}";

DynamicJsonDocument 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:

DynamicJsonDocument 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!

Tech Explorations 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 ⭐.