c++11 json解析库json.hpp
作者:互联网
地址 https://github.com/nlohmann/json
使用时,直接#include "json.hpp"
再using namespace nlohmann;
string jsonStr = R"({"id": 1, "name":"vivo"})";
//第2个参数是错误处理,第3个参数是不throw exception
nlohmann::json jr = json::parse(jsonStr, nullptr, false);
if (jr.is_discarded())
{
printf("json::parse error!\n");
return -1;
}
获取值的方法
if (jr["name"].is_string())
string str = j3["name"];
bool happy = j3["happy"].get<bool>();
避免此key为空的情况,会报异常导致程序挂掉。可以用is_string()来进行判断,还有 is_number_integer() is_array()
生成json字符串
nlohmann::json jn;
jn["id"] = 1;
jn["name] = "vivo";
stringstr = jn.dump();
标签:11,string,hpp,jn,jr,nlohmann,json,name 来源: https://www.cnblogs.com/m1911/p/16386743.html