🔄 JSON转Rust结构体

免费在线JSON转Rust结构体工具,一键将JSON数据转换为Rust struct定义,支持嵌套结构体、Option类型、serde标签等。无需注册。 | 无需注册 · 数据绝不上传服务器

零依赖·可离线使用

一键将JSON数据转换为Rust struct定义,支持serde标签和Option类型

零依赖 · 可离线使用

📝 JSON输入

❓ 常见问题

支持嵌套JSON吗?

支持。嵌套对象会自动生成为独立的Rust struct定义。

如何处理null值?

开启"Option类型"后,null字段生成为Option,确保Rust类型安全。

支持serde标签吗?

支持。可生成#[serde(rename)]和#[serde(default)]等标签。

数据会上传到服务器吗?

不会。所有转换在浏览器本地完成,数据绝不离开您的设备。

需要添加什么依赖?

需要在Cargo.toml中添加serde = {version="1",features=["derive"]}和serde_json = "1"。

生成的代码可以直接使用吗?

可以。添加serde依赖后,生成的代码可直接编译使用。

JSON转Rust结构体工具能做什么?

JSON转Rust结构体工具是一款免费在线开发者工具,能够将JSON数据一键转换为Rust语言的struct定义代码。自动识别JSON字段类型并映射为Rust类型,支持嵌套对象生成独立结构体、serde序列化标签、Option可空类型处理等功能。适用于Rust开发者快速从API响应或配置文件生成类型定义,配合serde_json实现自动序列化/反序列化。所有转换在浏览器本地完成,数据绝不上传服务器。

核心功能

使用教程

1. 在JSON输入框中粘贴您的JSON数据,或点击"加载示例"快速体验。

2. 设置结构体名称和转换选项:serde标签、Option类型、可见性等。

3. 点击"转换"按钮,或使用快捷键Ctrl+Enter执行转换。

4. 在下方结果区域查看生成的Rust结构体代码。

5. 点击"复制代码"将结果复制到剪贴板,或下载为.rs文件。

应用场景

场景1:Web API开发

使用Axum/Actix-web开发后端时,从API的JSON请求/响应快速生成Rust结构体,配合serde实现自动序列化。

场景2:配置文件解析

Rust项目使用JSON配置文件时,用此工具快速生成配置结构体定义,确保类型安全。

场景3:CLI工具开发

开发CLI工具时,从JSON API响应生成结构体,配合reqwest+serde实现类型安全的HTTP客户端。

场景4:WASM项目

在WebAssembly项目中,从JavaScript传递的JSON数据生成Rust结构体,实现跨语言类型安全通信。

扩展知识

serde是Rust生态中最流行的序列化框架,serde_json是其JSON实现。#[derive(Serialize, Deserialize)]让结构体自动支持JSON编解码。当Rust字段名与JSON键名不同时(如Rust用驼峰isVip而JSON用is_vip),使用#[serde(rename="is_vip")]映射。Option是Rust表达可空值的标准方式,serde将JSON的null映射为None,有值映射为Some(T)。Vec用于JSON数组。Rust的命名规范推荐结构体用大驼峰(UpperCamelCase),字段用小驼峰(lowerCamelCase),与JSON的snake_case不同时需要rename标签。

JSON转Rust结构体 | 无需注册 · 数据绝不上传服务器

问题反馈: dexshuang@google.com