使用 Swift JSON 解析 JSON
Posted
技术标签:
【中文标题】使用 Swift JSON 解析 JSON【英文标题】:Parse JSON with Swift JSON 【发布时间】:2017-01-17 11:03:55 【问题描述】:如何使用 Swift JSON 获取值单选名称
我是这样写的
let response = JSON["topradio"]["Data"]
在此之前,我为值创建了模型,但无法绘制像 radio_name 这样的值
"topradio":
"result": "success",
"Data": [
[
"radio_name": "Kantipur",
"rimage": "radio/1422960479145155755920731096211441695162.jpeg",
"status": "1",
"user_faverate": "false",
"popular_radio": "0",
"radio_id": "4"
]
[
"radio_name": "Kantipur",
"rimage": "radio/1422960479145155755920731096211441695162.jpeg",
"status": "1",
"user_faverate": "false",
"popular_radio": "0",
"radio_id": "4"
]
]
提前致谢
【问题讨论】:
试试let name = JSON["topradio"]["Data"][0][0]["radio_name"]
提示:Data
是一个数组,它本身包含一个数组。您需要获取Data
数组的第一个元素,然后是该数组的第一个元素,或者(很可能)遍历可能包含多个对象的数组。
@jcaron 如果假设我有这样的响应如何解析
@ios_PROGRAMMER NIrav D 为您提供一个索引的正确答案,但请尝试动态let name = JSON["topradio"]["Data"][0][indexValue]["radio_name"]
@MuseerAnsari 进入一个 for 循环每个对象我怎么写 let name = JSON["topradio"]["Data"][0][indexValue] this
【参考方案1】:
您可以通过这种方式遍历嵌套的 data
数组。
let dataArray = JSON["topradio"]["Data"].array
for item in dataArray
let itemArray = item.array
for subItem in itemArray
if let name = subItem["radio_name"].string
print(name)
【讨论】:
以上是关于使用 Swift JSON 解析 JSON的主要内容,如果未能解决你的问题,请参考以下文章
使用未解析的标识符 'json' (Swift 3) (Alamofire)
JSON数据未在swift3中使用Alamofire进行解析