同个网站可以做多个外链吗落实网站建设管理
同个网站可以做多个外链吗,落实网站建设管理,新浪云能用wordpress,和wordpress差不多呢文章目录 json简介在线解析json的工具json for morden c简介简单使用 json简介
json是一种轻量简单的数据结构#xff0c;常用于网络数据传输#xff0c;相较于xml他更加简介轻量#xff0c;相较于protobuf它的学习成本更低几乎看个十几分钟就能上手#xff0c;因为就是一… 文章目录 json简介在线解析json的工具json for morden c简介简单使用 json简介
json是一种轻量简单的数据结构常用于网络数据传输相较于xml他更加简介轻量相较于protobuf它的学习成本更低几乎看个十几分钟就能上手因为就是一种键值对的形式类似于集合
{“acceptID”:“456789156”,“map”:[[1,“123”],[2,“456”],[3,“789”]],“msg”:“hello world”,“sendID”:“32154646”,“type”:1,“vec”:[1,2,3,4]} 格式化之后变为下面这样
{acceptID:456789156,map:[[1,123],[2,456],[3,789]],msg:hello world,sendID:32154646,type:1,vec:[1,2,3,4]
}在线解析json的工具
https://www.json.cn/blog/.git/json/json/
json for morden c简介
c中还是有很多的json库的比如libjson,jsoncpp… 但是用起来比较麻烦需要链接库啊什么的而且我们使用json一般只需要用到序列化和反序列化这两个功能所以只需要轻量级的json库就能满足我们的需求了那么json for morden c就是你最好的选择
json for morden c是一个德国的大佬写的在github上已经有将近40k的star数了, github地址:https://github.com/nlohmann/json
优点 1、引入工程非常简单只需要把github上的single_include目录下的json.hpp拷到你的项目中就行了
2、使用简单核心类就是nlohmann::json 重载了[]运算符添加键值对,json[key]value;就行了 序列化方法dump 反序列化:json::parse(json字符串)
3、和STL中的容器高度兼容 可以直接把容器当作键值对的值
4、跨平台 基于c11写的所以在wlin或者linux下使用都只需要把json.hpp拷进来就可以了
5、模板编程的优秀范例 全部使用模板想学习模板编程可以好好研究一下它的源码
缺点: 只能识别utf-8的字符
简单使用
#include json.hpp
#include iostream
#include vector
#include map
using json nlohmann::json;// 序列化测试
// json对象序列化成json字符串
std::string Serialize()
{json js;std::vectorint vec {1, 2, 3, 4};std::mapint, std::string map_;map_.insert(std::make_pairint, std::string(1, 哈哈哈));map_.insert(std::make_pairint, std::string(2, 啦啦啦));map_.insert(std::make_pairint, std::string(3, 呀呀呀));js[type] 1;js[send] 张三;js[accept] 李四;js[msg] 李四你在干嘛;js[vec] vec;js[map] map_;std::cout js std::endl;return js.dump();
}
// 反序列化
void Deserialize()
{json js json::parse(Serialize());std::cout type: js[type] std::endl;std::cout send: js[send] std::endl;std::cout accept: js[accept] std::endl;std::cout msg: js[msg] std::endl;std::cout vec: js[vec] std::endl;std::mapint, std::string j_map js[map];std::cout map: std::endl;for (auto pr : j_map)std::cout pr.first , pr.second std::endl;
}int main()
{Serialize();/*{accept:李四,map:[[1,哈哈哈],[2,啦啦啦],[3,呀呀呀]],msg:李四你在干嘛,send:张三,type:1,vec:[1,2,3,4]}*/Deserialize();return 0;
}效果:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/90519.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!