C++解析JSON的好文章

转载:http://zcg9033586.blog.163.com/blog/static/175217310201112852413788/

使用c++处理json数据交换格式

一、摘要

       json的全称为:JavaScript Object Notation ,顾名思义,JSON是用于标记javascript对象的,json官方的解释为:json是一种轻量级的数据传输格式。

本文并不详细介绍json本省的细节,旨在讨论如何使用c++语言来处理json,关于json更具体的细节,可参见json官网;www.json.org

二、本文选择处理json的c++库

      本文选择一个第三方库jsoncpp来解析json。jsoncpp是比较出名的c++解析库。在json官网也是首推的。

 

三、jsoncpp在windows下的编译

      要使用第三方源码库,第一步少不了的就是编译,将源代码文件编译成我们方便使用的动态连接库、静态链接库或者静态导入库。

      jsoncpp进行json解析的源码文件分布在include/json、src/json、下。其实jisoncoo源码并不多,为了方便产品管理,此处没必要将其便以为动态链接库或者静态导入库,所以我们选择使用静态链接库。

      json处理的很完善啦,所有编译选项都已经配置好,打开makefiles/vs71/jsoncpp.sln便可以开始编译(默认是使用vs2003编译器的,打开时直接按照vs2005提示转换即可)

 

四、jsoncpp使用详解

   jsoncpp主要包含三种类型的class:Value\Reader\Writer。jsoncpp中所有对象、类名都在namespace json中,包含json.h即可。

Json::Value只能处理ANSI类型的字符串,如果C++程序使用Unicode编码的,最好加一个Adapt类来适配。

1、Value

  JSon:Value是jsoncpp中最基本、最重要的类,用与表示各种类型的对象,jsoncpp支持的对象类型可见Json::Value Type枚举值。

 可如下是用Json::Value类:

 Json ::Value  json_temp;

json_temp["name"]=Json::Value("nana");

json_temp["age"]=Json::Value(26);

 

其余部分详见转载地址

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值