Json庫

從 YFRobotwiki
在2016年8月22日 (一) 15:48由Allblue對話 | 貢獻所做的修訂版本

跳到: 導覽搜尋

JSON 介紹


json library from github arduino Json

Github arduino json wiki | JSON Library 論壇簡介貼地址

download from the address:zip address

Welcome to the user manual for the Arduino JSON library, an elegant and efficient JSON library for embedded systems.

It's designed to have the most intuitive API, the smallest footprint and works without any allocation on the heap (no malloc).

It has been written with Arduino in mind, but it isn't linked to Arduino libraries so you can use this library in any other C++ project.

Using the library with Arduino


Examples

- IndentedPrintExample : Indented Print - 縮進打印例程
- JsonGeneratorExample : Json Generator - Json 生成例程
- JsonHttpClient : Json Http Client - Json HTTP Client例程(獲取網絡Json數據並解析)
- JsonParserExample : Json Parser - Json 解析例程
- JsonServer : Json Server - Json Server例程(生成Json數據並發布)
- JsonUdpBeacon : Json Udp Beacon - Json UDP Beacon 例程

Extra Examples

-JsonHttpClientWithESP8266 : Json Http Client With ESP8266 - Json HTTP Client例程(獲取網絡Json數據並解析)
-JsonServerWithESP8266 : Json Server With ESP8266 - Json Server例程(生成Json數據並發布)



Json Library Reference

- StaticJsonBuffer<200> jsonBuffer;

為JSON對象樹創建內存池(在棧上分配內存)

參數

200:內存大小(位元組) -根據對象大小更改

- DynamicJsonBuffer jsonBuffer;

為JSON對象樹創建內存池(在堆上分配內存)- 簡單但效率低




- JsonObject& root = jsonBuffer.createObject();

創建對象樹的根

- root["sensor"] = "gps";

在對象中添加值

參數

sensor:名稱
gps:值

- JsonArray& data = root.createNestedArray("data");

在對象中添加一個嵌套的數組

參數

data:數組名

- data.add(double_with_n_digits(48.756080, 6));

給data數組添加值

參數

48756080:值
6:保留小數位數

- root.printTo(Serial);

打印輸出

參數

48756080:值

例:{"sensor":"gps","time":1351824120,"data":[48.756080,2.302038]}


- root.prettyPrintTo(Serial);

打印輸出(格式)




- JsonObject& root = jsonBuffer.parseObject(json);

解析json數據

- sensor = root["sensor"]

取值

- latitude = root["data"][0]; "data":[48.756080,2.302038] 取值






返回Arduino庫菜單

返回首頁

更多建議和問題歡迎反饋至 YFRobot論壇