类库JSONCPP之二-JSON及JSONCPP介绍

前端之家收集整理的这篇文章主要介绍了类库JSONCPP之二-JSON及JSONCPP介绍前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

1JSON全称JavaScript Object Notation。是一种轻量级的数据交换格式。其独立于语言,并且更容易理解。

数据的存储形式分为两种:Key:Value的集合(常被理解为对象)以及Value的序列(常被理解为数组)形式。

Key:Value的集合:一般以“{”开始,以“}”结束,每一各Key后加“:”,每一对Key:Value之间以“,”分隔开。

如:{“name”:”LiMin”,“Age”:”12”,“Address”:”Xuhui DistrictShanghai”}

Value的序列:一般以“[”开始,以“]”结束,每一个Value之间也是以“[“abc”,123,true,false,null]

XML相比优点:1)更短;2)格式简单;3)读取简单;

2JsonCPP常用的类

JsonCPPC++格式的JSON类库。常用的类包括

1)、Json::Value

JsonCPP中的核心类,用来存储各种各样的类型数据,e.g.intstringcharbool等等。

2)、Json::Reader

Reader类用来将字符或者流解析到C++支持的数据类型中。主要方法parse()方法

3)、Json::Writer

Writer类为一虚类,需要子类来实现编码的功能

4)、Json::FastWriter

FastWriter类为Writer类的子类,将C++的类型编码为JSON支持的格式。

5)、Json::StyledWriter

StyledWriter类也为Writer类的子类,功能FastWriter一样。与FastWriter所不同的是FastWriter输出的是不带格式的JSON,而StyledWriter输出的是带格式的JSON


从图中看出,应该是style输出的形式比较美观些。

JSON API参考网址:http://jsoncpp.sourceforge.net/index.html

猜你在找的Json相关文章