返回 工具

JSON 转 C++ 转换器

生成 C++ struct/class,支持 nlohmann/json、RapidJSON、Boost.JSON

加载中...

如何在线将 JSON 转为 C++ 代码

  1. 1

    粘贴 JSON

    将你的 JSON 数据复制并粘贴到左侧输入框中。

  2. 2

    选择 C++ 库

    在配置选项中选择目标库:nlohmann/json(推荐)、RapidJSON 或 Boost.JSON。

  3. 3

    配置选项

    选择 C++ 标准(C++11/14/17/20)、命名风格、缩进方式、命名空间等。

  4. 4

    复制结果

    右侧会即时生成 C++ 代码,点击复制或下载即可在项目中使用。

功能概览

免费在线 JSON 转 C++ 结构体/类生成器。自动从 JSON 数据生成 C++ 代码,支持 nlohmann/json、RapidJSON、Boost.JSON 等多个库,兼容 C++11/14/17/20 标准。

工具描述

免费在线 JSON 转 C++ 转换器。自动生成 C++ struct/class 代码,支持 nlohmann/json、RapidJSON、Boost.JSON 等多个库。兼容 C++11/14/17/20 标准,支持自定义命名风格、缩进、命名空间。提供 Unreal Engine 集成示例。100% 浏览器端处理,数据不上传。

能力清单

  • 实时将 JSON 转换为 C++ struct/class,即时预览。
  • 支持多个 C++ JSON 库:nlohmann/json(推荐)、RapidJSON、Boost.JSON。
  • 支持 C++11/14/17/20 标准,自动生成对应的 include 和语法。
  • 灵活的命名风格:camelCase 或 snake_case。
  • 自定义缩进(2空格/4空格/Tab)、命名空间、结构体名称。
  • 自动处理嵌套对象、数组、基本类型和混合数据结构。
  • 生成 nlohmann/json 序列化函数(NLOHMANN_DEFINE_TYPE_NON_INTRUSIVE)。
  • 支持代码注释和 Unreal Engine 集成示例。

相关工具

常见问题

如何将 JSON 转换为 C++ 代码?
将 JSON 数据粘贴到输入框中,工具会自动生成 C++ struct 代码,包含正确的字段类型(std::string、int、double、bool、std::vector 等)。然后你可以复制或下载结果。
nlohmann/json 是什么?
nlohmann/json 是一个现代、易用的 C++ JSON 库,提供单头文件实现,支持 C++11 及以上。它是目前最流行的 C++ JSON 库,GitHub 有 40k+ stars。本工具默认推荐使用。
如何在 Unreal Engine 中使用生成的代码?
选择「Unreal Engine」代码片段预设,工具会生成包含 Unreal 集成示例的代码。你需要在项目中包含 nlohmann/json 库,然后按照示例代码集成到你的 C++ 类中。
RapidJSON 和 nlohmann/json 有什么区别?
nlohmann/json 更易用,提供直观的 API;RapidJSON 性能更高,适合处理大型 JSON 文件。Boost.JSON 是标准库集成方案。选择哪个库取决于你的项目需求。
生成的代码支持哪些 C++ 标准?
工具支持 C++11、C++14、C++17、C++20。选择不同标准会影响生成的语法(如 std::optional、constexpr 等)。建议选择与你项目一致的标准。
命名风格有什么作用?
命名风格决定了生成的 C++ 字段名格式。camelCase(驼峰)是 C++ 常见风格;snake_case(下划线)适合某些项目规范。工具会自动转换 JSON 键名。
嵌套 JSON 对象如何处理?
嵌套的 JSON 对象会被转换为嵌套的 struct。例如 {"address": {"city": "Beijing"}} 会生成一个包含 Address struct 的代码。嵌套深度没有限制。
JSON 数组如何处理?
JSON 数组会被转换为 std::vector<T> 类型。元素类型从第一个非 null 元素推断。对象数组会生成对应的 struct 类型。空数组默认为 std::vector<std::string>。
如何添加命名空间?
在「命名空间」选项中输入你的命名空间名称(如 MyApp)。生成的代码会自动包装在 namespace MyApp { ... } 中。
生成的代码可以直接使用吗?
可以。生成的代码包含完整的 struct 定义和必要的 include 语句。对于 nlohmann/json,还包含序列化函数。你可以直接复制到项目中使用。
这个工具会把我的数据上传到服务器吗?
不会。所有转换过程都在你的浏览器中本地完成,你的 JSON 数据不会被发送到任何服务器。这确保了你的代码和数据的完全隐私。