OC 工具 模型 model Json转Codable

发布时间:2026/6/27 18:34:34
OC 工具 模型 model Json转Codable 一直觉得自己写的不是技术而是情怀一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的希望我的这条路能让你们少走弯路希望我能帮你们抹去知识的蒙尘希望我能帮你们理清知识的脉络希望未来技术之巅上有你们也有我。写了一个json转模型的工具生成的模型使用Codable协议工具下载链接JSON转SwiftCodable模型生成器-V3.html测试代码Swift-单模型-Class-Codable转换模型.zip文章目录效果实现的功能注意1.识别特殊字符的问题效果实现的功能✅可直接双击运行 ✅单文件 HTML ✅自动生成嵌套模型 ✅数组模型支持 ✅一键复制代码按钮 ✅支持一键下载 .swift ✅✅支持暗黑模式 ✅1: 网页分开两边左边是json的输入框我用来复制后台请求数据的json右边是生成的每一个Swift模型我需要在swift项目用的。然后网页顶部有一个输入框用来命名模型的名称 ✅2: 下面先讲每个模型的命名问题 ✅3: 每个模型必须实现Codable协议 ✅4: 每个属性的类型带号 例如var store_info_id: Int? ✅5: 每个模型需要实现 CodingKey ✅6.enum CodingKeys: String, CodingKey 映射要求 ✅6.1驼峰命名法 — 如果遇到后台的带下划线字段例如department_idi OS属性转换成驼峰命名法例如department_id转换成departmentId ✅6.2关键字 — 如果遇到iOS的关键字段用其他字段代替例如description换成descriptionStaion 说明Staion是怎么来的呢就是字典的名称例如看下面,下面的description来自staion的字典字典拼接上她就可以staion:{updateAt:2026-06-22T16:31:20.50002908:00,description:1}✅6.3 全部统一小写 — 如果遇到字段开头是大写的自动转换成小写的属性例如看下面的字段全是大写开头的利用enum CodingKeys: String, CodingKey{全部替换成小写的字段casecreateByCreateBycaseupdateAtUpdateAtcaseidId然后注意 ID转换小写之后id是ios的关键字需要id后面拼接字典的名称{UpdateAt:2026-06-22T16:31:20.50002908:00,CreateBy:0,Id:3}✅7.相同结构模型去重例如 LoginUserModel 不重复生成 ✅8.支持空数组推断不是只能目前默认写死[String]只能说是兜底 ❌写失败过9.支持拖拽 JSON 文件不重要 ❌写失败过10.在上面的代码中给左边框的json数据进行润色。把所有字典的key全部改为#92278F例如 message datacode 全部凡是json涉及到的key全部改为#92278F颜色然后json的key都有value如果是字符串就改为 #3AB54A如果value是int float 数字的不管整数还是小数全部改为# 25AAE2 其他代码全部不变不要影响目前的功能✅10.修改复制按键按下取消弹窗太繁琐 ✅11.支持json错误定位位置右边输出中文错误但是左边没有行数显示 未实现支持 HandyJSON 未实现支持 Codable 未实现支持 ObjectMapper 未实现支持 MJExtension 未实现支持 SwiftData 未实现支持 struct / class 切换 未实现支持 nullable 推断注意1.识别特殊字符的问题iOS的特殊字符需要自己慢慢手动加以后遇到自己加在下面的代码里面//特殊字段自己有空慢慢加 //id-stationId // iOS关键字段id /type/ description 等 const iOSKeywordsnew Set([id,type,description]);