JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。

易于人阅读和编写。

同一时候也易于机器解析和生成。

它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。
JSON採用全然独立于语言的文本格式,可是也使用了类似于C语言家族的习惯(包含C, C++, C#, Java, JavaScript, Perl, Python等)。 这些特性使JSON成为理想的数据交换语言。

JSON建构于两种结构:



“名称/值”对的集合(A collection of name/value pairs)。不同的语言中,它被理解为对象(object),纪录(record)。结构(struct)。字典(dictionary),哈希表(hash table),有键列表(keyed list)。或者关联数组 (associative array)。

值的有序列表(An ordered list of values)。

在大部分语言中。它被理解为数组(array)。

这些都是常见的数据结构。其实大部分现代计算机语言都以某种形式支持它们。

这使得一种数据格式在相同基于这些结构的编程语言之间交换成为可能。

使用JsonCpp步骤:

一、下载JsonCpp

大家能够从我的资源下载,也能够从官方下载

二、编译Lib

大家用VS打开\jsoncpp-src-0.5.0\jsoncpp-src-0.5.0\makefiles\vs71文件夹下的project文件,然后编译就能够生成相关的Lib库(默认生成:json_vc71_libmt.lib)

三、创建第二种project,将json_vc71_libmt.lib库加入到相关路径,并设置对应的project属性。同一时候源代码例如以下:

//testjson

    ifstream ifs;
ifs.open("testjson.json");
assert(ifs.is_open()); Json::Reader reader;
Json::Value root;
if ((!reader.parse(ifs, root, false)))
{
return false;
} std::string name = root["name"].asString();
int age = root["age"].asInt();

链接库和加入头文件:

#pragma  comment(lib, "json_vc71_libmt.lib")
#include "../jsoncpp/include/json.h"
#include<fstream>
#include <cassert>
using namespace std;

须要注意的是。我们在执行新project可能出现下述错误:

问题一:error LINK2038:检測到"RuntimeLibrary" 的不匹配项

解决方法:将新project的project编译选项和jsoncppproject的编译选项设置为同样:

问题二:json_value.asm: No such file or directory

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

解决方法:将jsoncppproject的编译选项中的回报编程序输出设置为无列表:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

參考博客:

Jsoncpp使用具体解释以及链接问题解决

C++ 解析Json——jsoncpp

Jsoncpp的使用

Jsoncpp使用具体解释以及链接问题解决的更多相关文章

  1. ld链接问题解决

    http://stackoverflow.com/questions/480764/linux-error-while-loading-shared-libraries-cannot-open-sha ...

  2. Redis具体解释与常见问题解决方式

    Redis简单介绍 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对很多其它.包含string(字符串).list(链表).set(集合).zset ...

  3. 【独立开发人员er Cocos2d-x实战 013】Cocos2dx 网络编程实战之星座运势

    学习cocos2d-x和cocos creator的圈子:cocos2d-x:436689827    cocos creator:124727696 本篇文章主要内容:jsoncpp的使用,Coco ...

  4. MAC 远程桌面链接 证书或链接无效

    RDC --> 首选项  -->  安全性 --> 勾选即使验证失败也要链接.   问题解决.

  5. HTMl链接- target/ name

    下面解释一下链接标签的另外两个属性:target和name HTML 链接 - target 属性 使用 Target 属性,你可以定义被链接的文档在何处显示. 下面的这行会在新窗口打开文档: < ...

  6. java链接mysql

    比喻不是很合适,但能凑合用 解释 javaweb链接数据步骤 加载JDBC驱动 Class.forName("com.mysql.jdbc.Driver);//加载JDBC驱动 提供链接数据 ...

  7. 【VS2015】链接器错误link2001

    昨天的D3d第一章代码自己打了一遍结果运行报错LINK2001,无法解析外部的MinMain. 解决方法: 项目[属性]→[链接器]→[系统]→[子系统(subsystem)]改为控制台或者留空也可以 ...

  8. [转]php-fpm配置具体解释

    [转]php-fpm配置具体解释 php-fpm具体解释 原文链接:http://php-fpm.anight.org/wiki:http://www.php-fpm.com/翻译:http://sy ...

  9. CNN中feature map、卷积核、卷积核的个数、filter、channel的概念解释

    CNN中feature map.卷积核.卷积核的个数.filter.channel的概念解释 参考链接: https://blog.csdn.net/xys430381_1/article/detai ...

随机推荐

  1. ActiveMQ学习笔记(8)----ActiveMQ的消息存储持久化

    1. 概述 ActiveMQ不仅支持persistent和non-persistent两种方式,还支持消息的恢复(recovery)方式. 2. PTP Queue的存储是很简单的,其实就是FIFO的 ...

  2. 搭建rsync实时同步

    1.本实验基于centos6.5服务器做的 cat cat /etc/redhat-release 2.在配置环境之前需要先将服务器自带的rsync卸除 yum -y remove rsync* 3. ...

  3. 学习参考:《Python语言及其应用》中文PDF+英文PDF+代码

    学习简单的数据类型,以及基本的数学和文本操作,学习用Python内置的数据结构来处理数据: 掌握Python的代码结构和函数的用法:使用模块和包编写大规模Python程序:深入理解对象.类和其他面向对 ...

  4. nodejs 守护进程运行

    有四种方法: 1.forever forver start  bin/www 2.pm2 pm2 strat bin/www 3.node自身进程保护 nohup node /bin/www  > ...

  5. HTTP——学习笔记(1)

    名词解释: 协议: HTTP:HyperText Transfer Protocol,超文本传输协议,属于应用层的协议 FTP:File Transfer Protocol,文件传输协议,相比于HTT ...

  6. System Databases in SQL Server

    https://docs.microsoft.com/en-us/sql/relational-databases/databases/system-databases SQL Server incl ...

  7. 13.MongoDB 连接命令格式

    转自:https://www.linuxidc.com/Linux/2016-03/129456.htm 使用用户 admin 使用密码 123456 连接到本地的 MongoDB 服务上.输出结果如 ...

  8. 【DNN 系列】 DNN是什么

    DNN平台 这个DNN平台是一个开放的.可扩展的.安全的.可扩展的内容管理系统和ASP.NET.世界各地的数十万商户,从地方小企业到全球1000强企业,取决于DNN平台作为他们网站的编辑环境. 这个网 ...

  9. .net 操作INI文件

    using System.Runtime.InteropServices; using System.Text; namespace FaureciaManager { public class Fi ...

  10. kotlin MutableList sort

    fun MutableList<Int>.swap(index1: Int, index2: Int) {val tmp = this[index1] // 'this' correspo ...