微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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();

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐