본문 바로가기
VisualStudio.C++.C#/코딩팁,함수활용,단편

jsoncpp. Json::Value , Json::Reader, Json::CharReader, Json::CharReaderBuilder

by i.got.it 2020. 5. 12.

 

 

개요 .  Json형식 문자열을 Json::Value 로 변환 

 

jsoncpp 기반 Json::Value , Json::Reader  는 Visual C++ 2017 에서는 정상작동하나, Visual C++ 2019 에서는 사용 불가. VC++2019 에서는  Json::CharReaderBuilder 와 Json::CharReader 활용. 

 

 

Json::Reader 

- VC++2017 에서는 정상작동. VC++2019 에서 컴파일오류. 

#include <json/json.h> // jsoncpp . 1.9.2 . from vcpkg -> nuget -> in this project

std::string str_json; // 이 변수에 json형식의 문자열이 있다고 치자. 
Json::Value value_json; // Json::Value 변수.

/// json 형식의 문자열을 Json::Value 변환 방법. 

Json::Reader json_reader; 
json_reader.parse(str_json, value_json); // 문자열을 Json::Value 형식으로 받았음. 


 

Json::CharReaderBuilder 와 Json::CharReader 

- VC++2019 정상작동.

 

stackoverflow.com/questions/47283908/parsing-json-string-with-jsoncpp

 

Parsing JSON string with jsoncpp

I'm trying to parse a JSON string encoded with PHP and sent over TCP to a C++ client. My JSON strings are like this: {"1":{"name":"MIKE","surname":"TAYLOR"},"2":{"name":"TOM","surname":"JERRY"}} ...

stackoverflow.com

 

 

 

 

Json::Value 를 std::string 으로 

Json::Value json_result; 

Json::StreamWriterBuilder  writer_builder; 

std::string str = Json::writeString(writer_builder,json_result); // 
CString cst(str.c_str()); // string 을 CString 으로. 

 

 

 

 

 

 

연관

 

 

jsoncpp. 라이브러리 설치

 jsoncpp 라이브러리 설치방법. - 단순명료. 1. vcpkg 에서 jsoncpp 다운받고 이것을 NuGet 패기지로 출력하고, 방법 상세 2. Visual C++ 프로젝트의 NuGet 툴로 상기1의 jsoncpp 를 프로젝트에 적용. jsoncpp -..

igotit.tistory.com

 


첫 등록 : 2020.05.12

최종 수정 : 2021.01.07

단축 주소 : https://igotit.tistory.com/2542

 


 

 

 

 

 

 

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5