프로그래밍/Arduino

[아두이노] ArduinoJson5 Json to String

Beginner:) 2022. 7. 1.
320x100

ArduinoJSON을 사용하다가 파싱이 아닌 JSON의 형태를 그대로 문자열로 가져오고 싶었다.

 

만약 파싱하는 방법을 찾는 것이라면 아래의 링크를 확인하자.

https://arduinojson.org/v5/example/parser/

 

그리고 JSON을 생성하고 싶다면 아래의 링크를 확인하자.

https://arduinojson.org/v5/example/generator/

 

6 버전을 찾는다면 링크 주소에서 v5를 v6으로 바꾸기만 하면 된다.

 

 

 

Arduino에서 Json을 사용하려면 라이브러리를 먼저 설치해야한다.

 

라이브러리 매니저에서 "ArduinoJson"을 검색하는데 

 

ArduinoJson은 5 버전과 6 버전이 있는데 명령어가 완전 다르다.

 

버전을 주의해서 잘 설치하자. 

 

나의 환경은 ArduinoJson5이다.

 


ArduinoJson5에는 printTo라는게 있다. 

 

printTo라고 해서 Serial.print와 같은 기능인 줄 알았는데 다르다.

 

먼저 Json을 Serial에 출력하려면 printTo(시리얼)을 사용하면 된다.

StaticJsonBuffer<1500> jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["index"] = "value";

root.printTo(Serial);

 

내가 만든 JSON을 char[]에 넣고 싶으면 printTo(char[])

 

StaticJsonBuffer<1500> jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["index"] = "value";

char output[100];
root.printTo(output);

 

 

내가 만든 JSON을 String에 넣고 싶으면 printTo(String)

StaticJsonBuffer<1500> jsonBuffer;
JsonObject& root = jsonBuffer.createObject();
root["index"] = "value";

String output="";
root.printTo(output);

 

별거 아닌데 형변환해야하는 줄 알고 시도하다  오류 나고 ESP라 컴파일도 느리고 귀찮고... 고생좀했다

반응형

댓글