【发布时间】:2018-11-19 03:55:06
【问题描述】:
这是我的 JSON,当我读取 ord 、 uniq 数据时出现错误
let response2 : [String: Any] = ["Response":["status":"SUCCESS","error_code":"0","message":"SUCCESS","Array":[
["ord":"50","uniq":"5a66c2348",
"name":"SHREE","no":"UP11AT0","loc":"Hathin","lat":"23.33","lon":"87.09","date":"30-01-2018","time":"12:35:33","dis_dt":"00-00-0000","dis_tm":"00:00:00"],
["ord":"50","uniq":"5a66c2348",
"name":"SHREE","no":"UP11AT0","loc":"Hathin","lat":"23.33","lon":"87.09","date":"30-01-2018","time":"12:35:33","dis_dt":"00-00-0000","dis_tm":"00:00:00"],
["ord":"50","uniq":"5a66c2348",
"name":"SHREE","no":"UP11AT0","loc":"Hathin","lat":"23.33","lon":"87.09","date":"30-01-2018","time":"12:35:33","dis_dt":"00-00-0000","dis_tm":"00:00:00"]
]],"count":"35"]
我的代码是
let status = "\((response2["Response"]! as! [String: Any])["status"]!)"
print(status)
if status == "SUCCESS" {
let count = ((response2["Response"]! as! [String: Any])["Array"] as AnyObject).count!
print(count)
let ar = (response2["Response"]! as! [String: Any])["Array"]!
print(ar)
var ord_id: [Any] = []
for i in 0..<count {
ord_id.append((response2["Response"]! as! [String: Any])["Array"]! [0] as! [String:Any])// Here I'm getting Type 'Any' has no subscript members and
}
} else {
print("Show alert")
}
当这样写时,我收到错误:Type 'Any' has no subscript members
let ar = (response2["Response"]! as! [String: Any])["Array"]! [0] as! [String: Any]
当我这样写时,错误:无法将“Swift.Array>”(0x10bf341f0)类型的值转换为“Swift.Dictionary”(0x10bf340d0)。
let ar = (response2["Response"]! as! [String: Any])["Array"]! as! [String: Any]
我无法理解确切的问题是什么以及如何解决它。
【问题讨论】:
标签: ios json swift post nsdictionary