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)
相关推荐
yc_12247 小时前
用 Visual Studio 远程调试 Linux:从零到流畅的完整指南
linux·ide·visual studio
望眼欲穿的程序猿14 小时前
苹果系统使用VsCode开发QT
ide·vscode·编辑器
染夕陌木16 小时前
RPC/服务调用框架中“方法无法应用到给定类型”错误的通用排查指南
java·ide·rpc
逐星ing19 小时前
IDEA 无法识别 `mvn install` 最新 SNAPSHOT 依赖的根因与完整解决方案
java·ide·intellij-idea
代码的奴隶(艾伦·耶格尔)19 小时前
claude codex(deepseep-v4-pro)
ide
oscar99920 小时前
在 IDE 中无缝使用 OpenCode:VS Code、Cursor 兼容指南
ide·opencode
2501_9151063220 小时前
在Mac上搭建iOS开发环境的详细步骤与注意事项
ide·vscode·macos·ios·个人开发·swift·敏捷流程
Freak嵌入式20 小时前
亲测可用!可本地部署的 MicroPython 开源仿真器
ide·驱动开发·嵌入式·仿真·micropython·upypi
摇滚侠20 小时前
IDEA 中快捷键的使用和修改 IDEA 中如何调试程序
java·ide·intellij-idea
码云数智-园园21 小时前
PHP 8.x 命名的参数与属性(Attribute):告别注释,构建真正的元数据
android·ide·android studio