码迷,mamicode.com
首页 > Web开发 > 详细

jsonCPP

时间:2021-05-24 12:49:23      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:string   html   include   开源库   示例   iostream   doc   filename   end   

jsoncpp是一个用于操作json数据的C++开源库
代码地址:https://github.com/open-source-parsers/jsoncpp
使用文档:http://open-source-parsers.github.io/jsoncpp-docs/doxygen/index.html

使用过程中遇到一个错误,这里作为记录

错误

error C4996: ‘Json::Reader‘: Use CharReader and CharReaderBuilder instead
error C4996: ‘Json::Reader::Reader‘: Use CharReader and CharReaderBuilder instead

解决方法

Json::CharReaderBuilder readerBuild;
Json::CharReader* reader(readerBuild.newCharReader());

示例


#include <iostream>
#include "json/json.h"


int main()
{
	std::cout << "Hello world" << std::endl;

	const char* strValue = "{\"file_path\": \"./test_models/test.obj\", \"filename\":\"test.obj\", \"code_id\": 3 }";
	Json::CharReaderBuilder readerBuild;
	Json::CharReader* jsonReader(readerBuild.newCharReader());
	Json::Value jsonValue;
	JSONCPP_STRING jsonErrs;
	bool isParse = jsonReader->parse(strValue, strValue + std::strlen(strValue), &jsonValue, &jsonErrs);
	if (isParse && 0 == jsonErrs.size()){
		std::string filePath = jsonValue["file_path"].asString();
		std::string fileName = jsonValue["filename"].asString();
		int codeId = jsonValue["code_id"].asInt();
		std::cout << "filePath: " << filePath << " fileName: " << fileName << " codeId: " << codeId << std::endl;
	}
	
	return 0;
}

jsonCPP

标签:string   html   include   开源库   示例   iostream   doc   filename   end   

原文地址:https://www.cnblogs.com/xiaxuexiaoab/p/14574884.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!