YourTools.
English
返回目录
工具

JSON 生成代码类型

根据示例 JSON 生成 TypeScript 接口、C# 类、Java record、Go 结构体、Rust serde 结构体或 Python dataclass;部分样本缺少的字段标为可选。

本地处理

文件只在当前浏览器处理;关闭或清空后不保留。

输入文本

输入或粘贴要处理的文本

调整设置

可调整语言、根类型名称

JSON 生成代码类型

开始处理

在本机浏览器中处理,可随时取消

请先输入文本

工具介绍

根据示例 JSON 生成代码类型:TypeScript 接口、C# 类、Java record、Go 结构体、Rust serde 结构体或 Python dataclass。粘贴一段接口返回或配置文件,就能得到数据模型的初稿,不必逐个字段手写。

嵌套对象会按键名生成单独的类型;对象列表会合并分析,部分元素缺少的字段标为可选,出现过 null 的字段标为可空。字段名按各语言的命名习惯转换,需要时用注解、标签或注释保留原始键名。最多处理 1 MB JSON,全部在浏览器中完成,内容不上传。

使用步骤

  1. 粘贴一个 JSON 对象或对象数组,也可以点击“使用示例”。
  2. 选择“语言”:“TypeScript 接口”“C# 类(System.Text.Json)”“Java record(Jackson)”“Go 结构体”“Rust 结构体(serde)”或“Python dataclass”。
  3. 设置“根类型名称”,默认为 Root,只能包含字母、数字和下划线,并以字母开头。
  4. 点击“运行”,预览代码并下载,文件以根类型命名,例如 Root.ts。

格式与限制

输入
文本
输出
TypeScript、C#、Java、Go、Rust、Python
大小上限
1 MB
可调设置
语言(TypeScript 接口、C# 类、Java record、Go 结构体、Rust 结构体、Python dataclass);根类型名称
隐私
文件留在当前浏览器会话中,不上传文件字节。
费用
免费,无需注册

常见问题

可选字段和可空字段是怎么判断的?

出现在数组中的对象会合并分析:部分对象缺少的字段标为可选,任何样本中为 null 的字段标为可空。提供几条有代表性的样本,生成的类型会更准确。

为什么有的字段类型是 unknown、object 或 any?

这个字段的样本始终是 null,或者混有数字和字符串等不同类型,没有单一类型能对应;空数组的元素也按这种方式处理。整数和小数混合时则统一为浮点类型。

为什么 10.0 被识别成整数?

JSON 中的 10.0 和 10 是同一个数值,都按整数处理。如果字段会出现小数,请在样本中放一个带小数部分的值,例如 9.5。

嵌套的类型是怎么命名的?

嵌套对象按键名转成大驼峰命名的类型,数组元素取单数形式,例如 orders 得到 Order,categories 得到 Category;重名时加数字,例如 Address2。根节点是数组时,元素类型名为根类型名加 Item,例如 RootItem。

为什么提示 JSON 无效或结构不支持?

输入必须是标准 JSON,顶层是对象或对象数组;注释、多余的逗号和单引号都会报错,可以先用“JSON 格式化与校验”的“修复后格式化”处理。嵌套超过 64 层或要生成超过 500 个类型时,也会停止运行。

用到这个工具的工作流