JsonCpp

GitHub的仓库地址:open-source-parsers/jsoncpp: A C++ library for interacting with JSON.

jsonCpp库支持C++11

把 GitHub 上的 JsonCpp 源代码拷贝进你自己工程并编译 的常见做法

JsonCpp 官方 README 推荐的最简单方式是 使用它的"amalgamated"合并版本 :将合并后的单一源文件和头文件加入工程。 chromium.googlesource.com

🧱 为什么这样做?

  • 不需要单独构建 JsonCpp 库

  • 只要把几个文件当普通代码编译进入你的项目即可

  • 避免链接库/ABI 问题,和你的项目用同一套编译器/选项

📦 步骤:

1.从仓库获取 JsonCpp 源代码(本地 clone 或下载 zip)

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

2.运行合并脚本生成单文件版本(需要 Python):

bash 复制代码
python amalgamate.py

1).默认会生成合并后的文件:

2).把生成的 dist 目录下的文件拷贝到你工程源码目录中。

3.在你的项目中添加这些文件:

  • jsoncpp.cpp(可能是 jsoncpp.cpp 或类似名字)加入你的源码列表

  • 把头文件目录加入 include 路径(例如 distdist/json

4.在代码里引用:

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

5.像编译你自己代码一样编译和链接即可。

​​​​​​​

Json::Value root; 类对象转换为字符串

cpp 复制代码
std::string toJsonString(const Json::Value& root, bool pretty = false)
{
    Json::StreamWriterBuilder writer;
    writer["indentation"] = pretty ? "  " : "";
    return Json::writeString(writer, root);
}
相关推荐
计算机安禾6 小时前
【C语言程序设计】第35篇:文件的打开、关闭与读写操作
c语言·开发语言·c++·vscode·算法·visual studio code·visual studio
不想写代码的星星7 小时前
告别 C 风格枚举:为什么你应该使用 enum class
c++
m0_733612217 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
AI_搬运工7 小时前
从智能指针窥见现代C++的生存法则:告别内存泄漏,这篇就够了
c++
仰泳的熊猫7 小时前
题目2571:蓝桥杯2020年第十一届省赛真题-回文日期
数据结构·c++·算法·蓝桥杯
2301_807367197 小时前
C++中的模板方法模式
开发语言·c++·算法
tankeven8 小时前
HJ137 乘之
c++·算法
add45a8 小时前
C++中的观察者模式
开发语言·c++·算法
m0_569881479 小时前
基于C++的数据库连接池
开发语言·c++·算法
.select.9 小时前
c++ auto
开发语言·c++·算法