关闭

C++处理json数据——jsoncpp在Visual Studio 2010 的配置与使用(上)

标签: visual studio 2010c++json
420人阅读 评论(1) 收藏 举报
分类:

JSON


JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、C#、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。

  • 百度百科

  • 基本形式

     {
             "name" : "张三",
             "sex""男",
             "email""123456789@qq.com",
             "phone": "13323332333",
             "stature":182
     }

jsoncpp


 jsoncpp是一个C++库,可以使用它来通过C++代码来生成、解析json文件。同时也可以进行各种格式的字符串转换。

jsoncpp 在VS2010下的配置


本文只介绍在windows平台下jsoncpp的基本操作,有关jsoncpp多平台配置和高级操作详情请见官方文档。

一、在github 上fork工程,或者通过其他方式获取到jsoncpp的源文件

点击右边clone or download

二、查看解压后的工程目录并编译文件

这里写图片描述

 1.打开目录\makefiles\vs71
 2.用VS2010或更高级Visual Studio 打开工程jsoncpp.sln
 3.VS会提示当前项目版本较低,按照提示升级该工程
 4.在“解决方案资源管理器”中右键点击lib_json,选择“仅用于项目”,“仅生成lib_json”
 5.再次右键点击lib_json,这次选择“仅链接”
 6.将工程转为Release模式
 7.再次进行4,5步操作,这就生成了Debug和Release两个版本的jsoncpp

生成

三、在你的工程中配置jsoncpp

  • 1.进入jsoncpp-master\build\vs71目录,此时你会发现多出了Debug 和Realse目录
    目录
  • 2.进入debug\lib_json目录,把目录下的 .lib文件复制出来使其位于debug目录下
  • 3.为了方便,可以给.lib文件重命名如 jsoncpp.lib
    重命名
  • 4.对realse目录也进行上两步操作
  • 5.现在可以将jsoncpp-master复制到C盘根目录(也可以不复制,但要在以后的配置中路径要对应)
  • 6.新建一个工程或打开你想要配置的工程
  • 7.打开[项目]>[属性],如下图,在附加包含目录中选择位于C盘jsoncpp目录下的include文件夹
    选择#include
    添加目录
  • 8.在下面[链接器]中找到附加库目录选择到C:\jsoncpp-master\build\vs71\debug
    选择目录
    选择目录
  • 9.在[链接器]->[输入]的附加依赖项属性中加入jsoncpp.lib(你如果重命名过,那么就应该填写相应的文件名)
    附加依赖项
  • 10.在[C/C++]中的运行库设置中选择多线程调试
    运行库设置
  • 11.运行简单如下代码检查配置
#include "stdafx.h"
#include <iostream>
using namespace std;
#include "json/json.h"
int _tmain(int argc, _TCHAR* argv[])
{
    Json::Value root;

    root["test"]="this is a test json";

    cout<<root<<endl;
    system("pause");
    return 0;
}
  • 12.运行结果
    运行结果

四、以上是Debug版的配置过程,在配置Release版时:

       1)选择工程的项目属性配置页为Release
       2)在第8步选择目录时选择相应路径的\Release那个目录
       3)在第9步同样需要添加jsoncpp.lib
       4)第10步选择多线程(MT)
0
0
查看评论

C++解析json文件-VS2010中配置Jsoncpp

C语言操作json文件,VS2010中配置Jsoncpp。
  • kekong0713
  • kekong0713
  • 2016-10-10 20:46
  • 2351

vs2013 c++ 编译配置jsoncpp和使用jsoncpp解析json文件

 首先在https://github.com/open-source-parsers/jsoncpp#a-note-on-backward-compatibility网站 http://jsoncpp.sourceforge.net/网站上下载jsoncpp这个项目库的文件 右上角有这...
  • cqltbe131421
  • cqltbe131421
  • 2017-02-09 16:38
  • 1409

Buffer对象与JSON对象相互转换

Buffer对象与JSON对象相互转换> buffer=new Buffer('我爱你,物理'); > json=JSON.stringify(buffer); '{"type":"Buffer","data&q...
  • you23hai45
  • you23hai45
  • 2016-06-28 22:19
  • 5349

C++ 使用Json封装数据和解析数据

使用C++和别的语言做交互比较常用的一种数据操作方式就是json。可以到GitHub上下载对应C++的json库源码,我自己下了一套之前的版本,可以正常使用。jsoncpp-src 编译出来的库名:json_vc71_libmtd.lib(debug) | json_vc71_libmt.lib(...
  • u011261430
  • u011261430
  • 2017-08-30 12:06
  • 1537

修改一行代码,解决在C++ Builder平台上JSONCPP向数组添加元素的Bug

修改一行代码,解决在C++ Builder平台上JSONCPP 向数组添加元素的bug
  • gzliudan
  • gzliudan
  • 2015-04-25 03:12
  • 1894

C++处理JSON数据和在face++ 调用中的使用

使用C++处理JSON数据交换格式 一、摘要     JSON的全称为:JavaScript Object Notation,顾名思义,JSON是用于标记Javascript对象的,JSON官方的解释为:JSON是一种轻量级的数据传输格式。本文并不详细介绍JS...
  • u014114990
  • u014114990
  • 2016-03-28 17:29
  • 2349

从零开始的 JSON 库教程 笔记

从零开始的 JSON 库教程(一):启程我们要实现的 JSON 库,主要是完成 3 个需求:把 JSON 文本解析为一个树状数据结构(parse)。 提供接口访问该数据结构(access)。 把数据结构转换成 JSON 文本(stringify)。在本单元中,我们只实现最简单的 null 和 b...
  • u011232064
  • u011232064
  • 2016-10-03 23:30
  • 1283

解决Visual Studio 调试时候不够直接访问Json文件的问题

解决不能够访问Json文件的问题,修改配置文件 <system.webServer> <staticContent> <mimeMap fileExtension=".json" mimeType="application...
  • zhuqinfeng
  • zhuqinfeng
  • 2016-09-12 16:49
  • 414

通过Visual Studio快速生成Json或XML反序列化类代码

Visual Studio不愧是宇宙第一强的IDE工具,在Json、XML格式漫天飞、反序列化需求遍地走的现在,居然到最近才知道原来微软已经在Visual Studio集成了这么一样的良心功能,自动根据你的Json或者XML创建对应的反序列化类代码,想想以前对着Json格式一个字一个字的的复制、粘贴...
  • starfd
  • starfd
  • 2015-09-23 20:22
  • 5189

vs2010中编译配置jsoncpp

详细地jsoncpp编译方法 和 vs2010中导入第三方库的方法一 编译链接 1 在相应官网下载jsoncpp 2 解压得到jsoncpp-src-0.5.0文件 3 打开jsoncpp-src-0.5.0 -> makefiles -> vs71 -> jsoncpp.s...
  • hnyzwtf
  • hnyzwtf
  • 2016-03-13 22:22
  • 1497
    个人资料
    • 访问:402次
    • 积分:15
    • 等级:
    • 排名:千里之外
    • 原创:1篇
    • 转载:0篇
    • 译文:0篇
    • 评论:1条
    文章分类
    文章存档
    最新评论