反馈

JSON转Dart

JSON 输入

选项

下载 .dart
说明:工具使用类型推断(int/ double/ bool/ String/ List/ Object)。复杂类型或自定义序列化请手动调整。

Dart 代码

生成的类包含:构造函数、fromJson(Map<String, dynamic>)、toJson()。嵌套对象会生成内嵌类。

📖 工具说明

在 Flutter 开发中,手动为复杂的 JSON 接口编写 Model 类既繁琐又容易出错(尤其是处理嵌套数组和可选类型时)。本工具能一键将 JSON 示例数据 转换为类型严谨、符合官方规范的 Dart 类定义,并自动生成序列化与反序列化逻辑。


1. 核心应用场景


2. 核心功能解析

本站工具深度适配了 Dart 3.0+ 的语法特性与 Flutter 社区的开发习惯:

A. 智能类型推导 (Strong Typing)
B. 自动生成序列化方法 (Factory Constructors)
C. 100% 本地转换 (Privacy & Performance)
D. 现代代码规范

3. 操作流程简述

  1. 输入 JSON: 将 JSON 数据粘贴至本站的“输入区”。
  2. 设定类名: 在设置项中输入根类名(例如 UserModelOrderResponse)。
  3. 配置选项:
    • 勾选 Null Safety(支持 Dart 3.x)。
    • 选择是否生成 final 属性。
  4. 生成 Dart: 点击“转换为 Dart 类”按钮。
  5. 一键复制: 点击输出区的“复制代码”,将其粘贴到您的 .dart 文件中即可使用。

4. 转换代码示例

原始 JSON:

{
  "user_name": "Gemini",
  "score": 98.5,
  "is_online": true,
  "achievements": [101, 102]
}

生成的 Dart 代码 (本站处理):

class UserModel {
  String? userName;
  double? score;
  bool? isOnline;
  List<int>? achievements;

  UserModel({this.userName, this.score, this.isOnline, this.achievements});

  UserModel.fromJson(Map<String, dynamic> json) {
    userName = json['user_name'];
    score = json['score'];
    isOnline = json['is_online'];
    achievements = json['achievements']?.cast<int>();
  }

  Map<String, dynamic> toJson() {
    final Map<String, dynamic> data = <String, dynamic>{};
    data['user_name'] = userName;
    data['score'] = score;
    data['is_online'] = isOnline;
    data['achievements'] = achievements;
    return data;
  }
}

5. 为什么选择本站在线 JSON 转 Dart?

📖 相关推荐