JSON 轉 Swift

從 JSON 產生 Swift Codable struct 或 class

JSON 輸入

選項

模型
型別樣式
序列化

Swift 輸出

貼上 JSON 或載入範例,即可產生 Swift 程式碼。

JSON 轉 Swift 會產生什麼

JSON 轉 Swift 會將 API 回應或任何 JSON 範例轉成 Swift 型別。struct 會自動取得逐一成員初始化器;final class 則會產生 init。當屬性名稱與鍵不同時,例如 user_name → userName,會以 CodingKeys 列舉將每個屬性對應回 JSON。class 等保留字會以反引號跳脫,並保留原始名稱。

使用方式
  1. 1.貼上 JSON、上傳或拖放 .json 檔案,或載入其中一個範例。
  2. 2.設定根型別名稱並選擇型別樣式。
  3. 3.選擇協定遵循與 CodingKeys 策略(名稱不同時、一律或從不)。
  4. 4.閱讀輸出下方的提示,然後複製程式碼或下載 Models.swift。
型別如何推斷
  • •會檢查陣列中的每個元素,而不只是第一個,同一陣列中的物件會合併。
  • •部分物件缺少的鍵為選用;有時為 null 的鍵為可為 null。兩者分開處理。
  • •同一位置出現 1 與 2.5 時會放寬為小數;其他混合情況會回報。
  • •空陣列與一律為 null 的值沒有型別依據,因此使用泛用型別,並以提示說明原因。
  • •型別對應:string → String、integer → Int(超出時為 UInt64 或 Decimal)、decimal → Double、boolean → Bool、array → [T]、object → 巢狀型別、缺少或 null → T?、unknown 或混合 → JSONValue(未選協定遵循時為 Any)。
限制與隱私

範例只代表資料某一次的樣貌,並非完整的 API 合約。依賴程式碼前,請檢查選用欄位、泛用型別與數字寬度。輸入上限為 5 MB 與 256 層巢狀;從 2 MB 起,需按下「產生」按鈕才會產生。所有處理都在瀏覽器中執行,JSON 不會上傳。若選擇從不產生 CodingKeys,重新命名的屬性將不再對應其 JSON 鍵;提示會逐一列出。

CodingTool 已正式上線於

Launched on StartupBaseCodingTool.dev - Free, Fast & Easy Developer Tools in One Place | Product HuntCodingTool - Featured on Startup FameFazier badgeListed on Turbo0Featured on Twelve ToolsFeatured on Findly.toolsLaunchpadly Startup DirectoryCodingTool.dev — Featured on Smol Launch