JsonCpp如何实现数据读取

这篇文章主要介绍JsonCpp如何实现数据读取,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

网站制作、做网站,成都做网站公司-创新互联公司已向近1000家企业提供了,网站设计,网站制作,网络营销等服务!设计与技术结合,多年网站推广经验,合理的价格为您打造企业品质网站。

    Jsoncpp是个跨平台的C++开源库。下载地址:http://sourceforge.net/projects/jsoncpp/。assert作为错误处理方法,会中止程序的运行,切记!


1)从文件中解析json信息
     std::ifstream ifs;
     ifs.open("testdata.json", std::ios::binary);

     Json::Reader reader(Json::Features::strictMode());
     Json::Value root;
     if (NULL == reader.parse(ifs, root))
     {
          ifs.close();
          return;
     }
     ifs.close();


2)从缓存中解析json信息
     std::string strJsonText ="{\"total\":1,\"toReturn\":[{\"createTime\":\"20080806114526000+0800\",\"createUser\":\"张三\"}],\"success\":false}";

     Json::Reader reader(Json::Features::strictMode());
     Json::Value root;
     if (NULL == reader.parse(istrJsonText, root))  return;

注意:

1)
    JsonCpp解析非法json时,会主动容错成字符类型,对字符类型取下标时,会触发assert终止程序。解决的方法:启用严格模式,当解析非法json时返回false,不再自动容错。创建读取对象的时候,指定特性:Json::Reader reader(Json::Features::strictMode());
不提倡使用 Json::Reader reader;

2)Json格式的文本文件用Windows的记事本打开,可能会往文本中添加BOM标识,导致读取失败,建议使用Notepad++进行修改查看

以上是“JsonCpp如何实现数据读取”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


本文题目:JsonCpp如何实现数据读取
路径分享:http://hxwzsj.com/article/jidsdp.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 定制网站建设 网站制作 重庆网站建设 成都网站制作 成都响应式网站建设公司 网站建设 网站制作报价 成都网站制作 成都网站制作 成都网站设计 高端品牌网站建设 成都网站建设 定制网站建设多少钱 网站建设推广 成都h5网站建设 网站建设 成都网站制作 网站设计 品牌网站建设 重庆企业网站建设 温江网站设计 成都营销网站建设