JsonCpp 库如何集成到Visual studio

这是用于 在 C++ 中解析和生成 JSON 数据 的工具包,适合在需要与前端、网络、配置等 JSON 格式交互的 C++ 项目中使用。

Json(基于JsonCpp)

格式全称:JavaScript Object Notation

格式特点:

  1. 与开发语言无关
  2. 轻量级的数据存储格式
  3. 易于解析和封装
  4. 数据对象内部一般采用key-value模式来存储
  5. 支持数组、字符串、整数、小数、对象、布尔、空
  6. 可以用于数据传输、数据保存、数据交换

格式详解:

{

"name":"张三",

"age":18,

"身高":1.81,

"生日":"2002-01-02",

"学校":"北大青鸟",

"专业":["厨师","挖掘机"],

"单身":true,

"地址":null,

"好友":{...}

}

开源项目:

通用版本:(推荐)

https://github.com/open-source-parsers/jsoncpp

Window专用版本:

https://github.com/Microsoft/vcpkg.git

vcpkg: https://github.com/Microsoft/vcpkg.githttps://gitee.com/yao_yu_qq/vcpkg

一、如何下载最简单方式:直接集成源代码(推荐给初学者)

步骤:

  1. 下载 JsonCpp 源码:

进入 GitHub 页面下载:

或者直接克隆:

复制代码
git clone https://github.com/open-source-parsers/jsoncpp.git

2.找到源代码文件夹:

  • 进入 jsoncpp/src/lib_json/,将以下文件复制到你的项目中:

  • json_reader.cpp

  • json_value.cpp

  • json_writer.cpp

  • json.h

  • json_forwards.h(新版本可能已经合并)

3.包含头文件 + 编译源码

在你的 C++ 项目中添加这些源文件,然后包含头文件:

复制代码
#include "json/json.h"

示例编译命令(假设使用 g++):

复制代码
g++ main.cpp json_reader.cpp json_writer.cpp json_value.cpp -o my_app

二、使用 vcpkg 自动安装(适合 Windows + VS 用户)

步骤:

1.安装 vcpkg(如果还没装):

复制代码
git clone https://github.com/Microsoft/vcpkg.git
cd vcpkg
.\bootstrap-vcpkg.bat

2.安装 JsonCpp:

复制代码
.\vcpkg install jsoncpp

3.在你的项目中集成(以 Visual Studio 为例):

  • 在项目属性 → C/C++ → 常规 → 附加包含目录中添加:
    vcpkg\installed\x64-windows\include

  • 链接库目录也添加:
    vcpkg\installed\x64-windows\lib

4.在代码中使用:

复制代码
#include <json/json.h>

三、在 Visual Studio 项目中使用 JsonCpp

示例步骤:

1. 创建一个空的 Win32 控制台项目(或 CMake 项目也可以)
2. 添加以下测试代码:
复制代码
#include <iostream>
#include <json/json.h>

int main() {
    Json::Value person;
    person["name"] = "张三";
    person["age"] = 18;
    person["single"] = true;

    Json::StreamWriterBuilder writer;
    std::string json_output = Json::writeString(writer, person);

    std::cout << json_output << std::endl;
    return 0;
}
3. 直接编译运行(VS 会自动链接 JsonCpp)
相关推荐
Xiaok101816 小时前
Jupyter Notebook 两种模式:编辑模式 & 命令模式
ide·jupyter·命令模式
玩转C语言和数据结构1 天前
Jupyter Notebook下载安装使用教程(附安装包,图文并茂)
ide·python·jupyter·anaconda·jupyternotebook·anaconda下载·anaconda安装包
小二·1 天前
【IEDA】已解决:IDEA中jdk的版本切换
java·ide·intellij-idea
专注代码七年1 天前
IDEA大幅度提升编译速度配置
java·ide·intellij-idea
max5006001 天前
嵌入用户idea到大模型并针对Verilog语言生成任务的微调实验报告
java·ide·intellij-idea
依米s1 天前
Pycharm 、IDEA卡顿问题解决方案
ide·python·性能优化·pycharm
ayyyy____1 天前
把项目通过pycharm上传到github(两种方式)
ide·pycharm·github
Aevget1 天前
「Java EE开发指南」用MyEclipse开发的EJB开发工具(一)
java·ide·java-ee·myeclipse
sibylyue1 天前
IDEA AI Agent
java·ide·intellij-idea
MediaTea1 天前
Python 编辑器:PyCharm
开发语言·ide·python·pycharm·编辑器