【问题标题】:How to Read Data From a children array of a JSON in iOS如何从 iOS 中的 JSON 子数组中读取数据
【发布时间】:2020-06-29 19:42:14
【问题描述】:

这是我的 json

let myjson = """
{
  "name": "md",
  "student": "cse",
  "project":[{
    "id": "1",
    "pname":"iOS"
  },{
    "id": "2",
    "pname":"adroid"
  }],
}
"""

从这个 json 我想在我的 swift Playground 程序中打印一个特定的数据

我只想打印这些数据

{
"id": "1",
"pname":"iOS"
} 

here is an image of what I tried

谢谢。

【问题讨论】:

  • 请将代码发布为文本,而不是图像。

标签: ios json swift5 swift4.2


【解决方案1】:

您可以解码您的 json 并编码为新的 jsonString:

struct Response: Codable {
    var project: [Project]
}

struct Project: Codable {
    var id: String
    var pname: String
}

// your json string
let myjson = """
{ "name": "md", "student": "cse", "project":[{ "id": "1", "pname":"iOS" },{ "id": "2", "pname":"adroid" }]}
"""
let data = myjson.data(using: .utf8)!
let response = try! JSONDecoder().decode(Response.self, from: data)
   
// encode to print new json string
let encoded = try! JSONEncoder().encode(response)
let jsonString = String(data: encoded, encoding: .utf8)
print(jsonString) 

【讨论】:

  • 可以从这里只打印我的信息吗?仅此部分。 { "id": "1", "pname":"iOS" }
  • 是的,因为它只解码"project"data 中的idpname。您可以查看print(jsonString) 打印的内容或修改模型。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-24
  • 2018-07-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多