mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Added example sketch
This commit is contained in:
		
							
								
								
									
										94
									
								
								examples/JsonParserExample/JsonParserExample.ino
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										94
									
								
								examples/JsonParserExample/JsonParserExample.ino
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,94 @@ | |||||||
|  | /* | ||||||
|  | * malloc-free JSON parser for Arduino | ||||||
|  | * Benoit Blanchon 2014 - MIT License | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | #include <JsonParser.h> | ||||||
|  |  | ||||||
|  | void ParseAnObject() | ||||||
|  | { | ||||||
|  |     char* json = "{\"Name\":\"Blanchon\",\"Skills\":[\"C\",\"C++\",\"C#\"],\"Age\":32,\"Online\":true}"; | ||||||
|  |  | ||||||
|  |     JsonParser<256> parser; | ||||||
|  |  | ||||||
|  |     Serial.print("Parse "); | ||||||
|  |     Serial.println(json); | ||||||
|  |  | ||||||
|  |     JsonHashTable hashTable = parser.parseHashTable(json); | ||||||
|  |  | ||||||
|  |     if (!hashTable.success()) | ||||||
|  |     { | ||||||
|  |         Serial.println("JsonParser.parseHashTable() failed"); | ||||||
|  |         return; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     char* name = hashTable.getString("Name"); | ||||||
|  |     Serial.print("name="); | ||||||
|  |     Serial.println(name); | ||||||
|  |  | ||||||
|  |     JsonArray skills = hashTable.getArray("Skills"); | ||||||
|  |     Serial.println("skills:"); | ||||||
|  |     for (int i = 0; i < skills.getLength(); i++) | ||||||
|  |     { | ||||||
|  |         char* value = skills.getString(i); | ||||||
|  |         Serial.print(i); | ||||||
|  |         Serial.print(" "); | ||||||
|  |         Serial.println(value); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     int age = hashTable.getLong("Age"); | ||||||
|  |     Serial.print("age="); | ||||||
|  |     Serial.println(age); | ||||||
|  |  | ||||||
|  |     bool online = hashTable.getBool("Online"); | ||||||
|  |     Serial.print("online="); | ||||||
|  |     Serial.println(online); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | void ParseAnArray() | ||||||
|  | { | ||||||
|  |     char* json = "[[1.2,3.4],[5.6,7.8]]"; | ||||||
|  |  | ||||||
|  |     JsonParser<256> parser; | ||||||
|  |  | ||||||
|  |     Serial.print("Parse "); | ||||||
|  |     Serial.println(json); | ||||||
|  |  | ||||||
|  |     JsonArray array = parser.parseArray(json); | ||||||
|  |  | ||||||
|  |     if (!array.success()) | ||||||
|  |     { | ||||||
|  |         Serial.println("JsonParser.parseArray() failed"); | ||||||
|  |         return; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     for (int i = 0; i < array.getLength(); i++) | ||||||
|  |     { | ||||||
|  |         Serial.println(i); | ||||||
|  |  | ||||||
|  |         JsonArray innerArray = array.getArray(i); | ||||||
|  |  | ||||||
|  |         for (int j = 0; j < innerArray.getLength(); j++) | ||||||
|  |         { | ||||||
|  |             double value = innerArray.getDouble(j); | ||||||
|  |  | ||||||
|  |             Serial.print("  "); | ||||||
|  |             Serial.print(j); | ||||||
|  |             Serial.print("="); | ||||||
|  |             Serial.println(value); | ||||||
|  |         } | ||||||
|  |     } | ||||||
|  | } | ||||||
|  |  | ||||||
|  | void setup() | ||||||
|  | { | ||||||
|  |     Serial.begin(9600); | ||||||
|  |  | ||||||
|  |     ParseAnObject(); | ||||||
|  |     ParseAnArray(); | ||||||
|  | } | ||||||
|  |  | ||||||
|  | void loop() | ||||||
|  | { | ||||||
|  |  | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user