【问题标题】:How to define structure in iOS XCode for JSON?如何在 iOS XCode 中为 JSON 定义结构?
【发布时间】:2020-11-01 14:10:20
【问题描述】:

作为 iOS 新手,XCode 我正在尝试创建一个结构来表示 JSON 数据。但是,无论我尝试如何定义“段”(由一个 int 和一个字符串数组组成),XCode 都会出错,当我尝试遵循建议的修复时,它只会产生其他错误。

任何人都知道如何为 JSON 定义一个命名的结构,例如,不使用“ANY”,因为所有名称-值对和数据类型都是已知的?

XCODE 示例(如下所示的一种变体,尽管已经尝试了数十种并产生错误):

struct Information: Decodable {
    var entry: [Entry]
}
struct Entry: Decodable {
    var section: Int
    ***ERROR HERE ->*** var segments: Array<var id: Int, var values: Array<String>>
}

JSON 示例:

{
  "entry": [
    {
      "section": 1,
      "segments": [
        {
          "id": 1,
          "values": ["1", "2", "3"]
        },
        {
          "id": 2,
          "values": [ "4", "5", "6" ]
        }
      ]
    },
    {
      "section": 2,
      "segments": [
        {
          "id": 1,
          "values": ["7", "8", "9"]
        },
        {
          "id": 2,
          "values": [ "a", "b", "c" ]
        }
      ]
    }
  ]
}

【问题讨论】:

    标签: ios json xcode struct declare


    【解决方案1】:

    和顶层一样:你必须为底层创建一个结构体。

    struct Information: Decodable {
        let entry: [Entry]
    }
    struct Entry: Decodable {
        let section: Int
        let segments: [Segment]
    }
    struct Segment: Decodable {
        let id: Int 
        let values: [String]
    }
    

    【讨论】:

    • vadian,这个建议很有效!我不知道它必须像这样分解结构的内部部分。我要去了解有关这个新 XCode 的更多信息(至少对我来说是新的),再次感谢!
    猜你喜欢
    • 1970-01-01
    • 2020-06-13
    • 1970-01-01
    • 1970-01-01
    • 2021-06-09
    • 1970-01-01
    • 1970-01-01
    • 2021-09-02
    • 2010-10-04
    相关资源
    最近更新 更多