V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Phishion
V2EX  ›  Swift

Swift 字典 / JSON Key 下划线 <-> 驼峰 互转有什么好的办法么?

  •  
  •   Phishion · 2021-03-26 01:43:34 +08:00 · 1436 次点击
    这是一个创建于 1346 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我想把下面的 JSON

    {
      "userNickname": "whatever",
      "userId": "123",
      "date": "2021-03-25T16:10:00Z"
    }
    

    转换成

    {
      "user_nick_name": "whatever",
      "user_id": "123",
      "date": "2021-03-25T16:10:00Z"
    }
    

    之前用一个大佬写的 String Extension 发现有 bug,体现在如果 Value 中也有 “ : ”,会将 Value 识别为 Key,基于他那个写法我也不好修复,目前找到的基本都是基于 Codable 协议实现的,各位平时就没有这样的需求么?有没有大佬能贡献一个久经考验的扩展,谢谢各位

    第 1 条附言  ·  2021-03-26 02:40:22 +08:00
    key user_nick_name 应该是 user_nickname 更正一下
    4 条回复    2021-03-26 12:12:05 +08:00
    kaiki
        1
    kaiki  
       2021-03-26 02:32:41 +08:00
    你这个 Nickname 没有驼峰怎么判断为 nick+name 的?
    Phishion
        2
    Phishion  
    OP
       2021-03-26 02:39:15 +08:00
    @kaiki 驼峰是我我手打的意外,实际上不应该被驼峰,就是这个意思
    Phishion
        4
    Phishion  
    OP
       2021-03-26 12:12:05 +08:00
    @InternetExplorer 我就是不想每个 json 都先用 Codable 建模才用的呀
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2000 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:25 · PVG 08:25 · LAX 16:25 · JFK 19:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.