json数据类型:对象、数组、字符串、数字
对象:使用花括号{}括起来的表示一个对象;
数组:使用中括号[]括起来的一个数组;
字符串:使用常规双引号“ ”括起来的表示一个字符串;
数字:包括整形和浮点型,直接使用。
jsoncpp库用于实现json格式的序列化和反序列化
序列化:是指将多个数据对象组织成为json格式的字符串;
反序列化:是指将json格式的字符串解析得到多个数据对象的功能;
Json::Value类实例化出来的对象是将我们的多个数据对象保存起来;
jsoncpp中的Writer类就是json的序列化类,提供的功能就是将Json::Value中保存的多个数据对象进行序列化生成一个json格式的字符串;Writer类中涉及一个writer成员函数,作用就是传入一个Json::Value数据对象,然后将这个对象里面所有的数据按照json格式进行序列化,低版本的Writer类是直接返回序列化之后的json字符串,高版本里面是将我们序列化之后的字符串放到一个ostream流里面,可以通过获取这个流得到json格式字符串。
jsoncpp中的Reader类就是json的反序列化,就是将json格式字符串进行解析得到多个数据对象,然后放到Json::Value对象当中,使用成员接口parse将json格式字符串传入进去,再传入Json::Value对象,就会对字符串进行反序列化得到各个数据对象存放到Json::Value对象里面去。
标签:对象,json,Value,JSon,Json,字符串,序列化 From: https://blog.51cto.com/u_15562309/7473713