mirror of
				https://github.com/eledio-devices/thirdparty-ArduinoJson.git
				synced 2025-10-31 16:14:11 +01:00 
			
		
		
		
	Simplified the example
This commit is contained in:
		| @@ -1,5 +1,5 @@ | ||||
| /* | ||||
| * malloc-free JSON parser for Arduino | ||||
| * Arduino JSON library - Parser Example | ||||
| * Benoit Blanchon 2014 - MIT License | ||||
| */ | ||||
|  | ||||
| @@ -7,90 +7,38 @@ | ||||
|  | ||||
| using namespace ArduinoJson::Parser; | ||||
|  | ||||
| void ParseAnObject() | ||||
| void setup() | ||||
| { | ||||
|     char json[] = "{\"Name\":\"Blanchon\",\"Skills\":[\"C\",\"C++\",\"C#\"],\"Age\":32,\"Online\":true}"; | ||||
|     Serial.begin(9600); | ||||
|  | ||||
|     JsonParser<32> parser; | ||||
|     char json[] = "{\"sensor\":\"gps\",\"time\":1351824120,\"data\":[48.756080,2.302038]}"; | ||||
|  | ||||
|     Serial.print("Parse "); | ||||
|     Serial.println(json); | ||||
|     JsonParser<16> parser; | ||||
|  | ||||
|     JsonHashTable hashTable = parser.parseHashTable(json); | ||||
|     JsonHashTable root = parser.parseHashTable(json); | ||||
|  | ||||
|     if (!hashTable.success()) | ||||
|     if (!root.success()) | ||||
|     { | ||||
|         Serial.println("JsonParser.parseHashTable() failed"); | ||||
|         return; | ||||
|     } | ||||
|  | ||||
|     char* name = hashTable.getString("Name"); | ||||
|     Serial.print("name="); | ||||
|     Serial.println(name); | ||||
|     char* sensor = root.getString("sensor"); | ||||
|     Serial.println(sensor); | ||||
|  | ||||
|     JsonArray skills = hashTable.getArray("Skills"); | ||||
|     Serial.println("skills:"); | ||||
|     for (int i = 0; i < skills.getLength(); i++) | ||||
|     long time = root.getLong("time"); | ||||
|     Serial.println(time); | ||||
|      | ||||
|     JsonArray coords = root.getArray("data"); | ||||
|      | ||||
|     for (int i = 0; i < coords.getLength(); i++) | ||||
|     { | ||||
|         char* value = skills.getString(i); | ||||
|         Serial.print(i); | ||||
|         Serial.print(" "); | ||||
|         Serial.println(value); | ||||
|         double value = coords.getDouble(i); | ||||
|         Serial.println(value, 6); | ||||
|     } | ||||
|  | ||||
|     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<32> 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