JSON 转 Dart
JSON to Dart
JSON TO DART

JSON 转 Dart 类

粘贴JSON数据,一键生成Dart类代码,自带fromJson和toJson方法。纯本地运行,数据不上传,保护隐私。

🔒 100% 本地运行 · 数据不上传服务器 · 安全隐私 · 📋 基于Dart语言规范 · 更新时间:2025年

JSON 输入

Dart 输出

// 在左侧输入 JSON,自动生成 Dart 类
示例:

🔗 相关工具推荐

JSON 格式化校验

美化压缩JSON数据

JSON 转 TypeScript

前端接口类型

JSON 转 Python

Python数据类

JSON 转 C#

.NET实体类

📖 JSON转Dart工具 使用指南

什么是JSON转Dart工具

Dart是Google开发的编程语言,主要用于Flutter跨平台移动应用开发。Flutter应用中几乎所有数据都以JSON格式传输,每个数据模型都需要写fromJson和toJson方法。手动写这些样板代码非常枯燥,JSON转Dart工具可以自动生成带序列化方法的Dart类。

📋 JSON转Dart模型转换公式

转换规则:string -> String,number -> num(或double/int),boolean -> bool,array -> List,object -> Class嵌套类,null -> Type?可空类型。自动生成fromJson工厂构造函数和toJson方法,支持嵌套模型递归解析。字段名自动转为小驼峰命名(如user_name -> userName)。

📋 JSON类型与Dart类型对照表

JSON类型Dart类型说明
stringStringDart首字母大写
numbernum/double/int按需选择
booleanbool小写bool
arrayList<Type>泛型列表
objectClassName自定义类
nullType?可空类型

📋 JSON转Dart模型规则

JSON Type -> Dart Type: string->String, number->num/double/int, boolean->bool, array->List, object->ClassName, null->Type?(nullable)

生成的类包含fromJson工厂构造函数和toJson方法。字段名自动转为camelCase。空安全模式下可空字段加?后缀。建议配合json_annotation包和json_serializable代码生成器使用,实现自动序列化。

主要功能

典型使用场景

Flutter开发中对接后端API,每个接口的数据模型都需要写Dart类,用工具批量生成效率提升10倍。学习Flutter时,理解JSON序列化的原理,对比生成的代码学习最佳实践。个人项目快速原型开发时,不用手动写数据模型,专注业务逻辑。

使用教程

将JSON数据粘贴到输入框,设置类名和其他选项,点击「转换」按钮即可生成完整的Dart类代码。生成的代码包含:类定义、构造函数、fromJson工厂方法、toJson方法。如果使用json_serializable包,生成的代码可以直接配合build_runner使用。

实用技巧

常见问题 FAQ

Null Safety是什么意思?

Dart空安全要求变量明确区分可空和不可空类型,加问号的类型可以为null,不加的必须有值。本工具默认生成空安全版本,适配Flutter 2.0以上。

fromJson和toJson方法有什么用?

fromJson用于把接口返回的Map数据转为Dart对象,toJson用于把对象序列化为Map提交给接口,是Flutter开发中数据序列化的标准方式。

嵌套JSON怎么处理?

工具会自动识别嵌套的对象结构,生成对应的多个类,外层类引用内层类。数组会生成List泛型,保持完整的层级关系。

和json_serializable有什么区别?

本工具直接生成手写的序列化代码,无需依赖和build_runner;json_serializable通过注解自动生成代码,适合大型项目维护。

生成的Dart模型怎么在Flutter中使用?

将生成的Dart类文件放入models目录,在需要的地方import导入。使用时调用 ClassName.fromJson(jsonMap) 从JSON Map创建对象,调用 instance.toJson() 将对象转为JSON Map。配合 json_serializable 包可实现自动序列化。注意处理空安全(null safety),所有可空字段使用 String? 而非 String。