[英]Trying to parse JSON in Swift, but get error
{
"base": "EUR",
"date": "2016-09-23",
"rates": {
"AUD": 1.4685,
"BGN": 1.9558,
"BRL": 3.5931,
"CAD": 1.4625
}
}
我得到了一个这样的 json,我试图获得费率,但得到了错误,我的代码如下:
let id = json["rates"] as? String
print("rates :" + id!)
我是 swifty 的新手,我想分别获得每个费率,有人可以帮助我吗? 谢谢
尝试这个:
If let id = json["rates"] as? [String:AnyObject] {
print("rates :" + id)
}
您可以按照下面提到的代码来获取各个值。
这里的 rate 是字典类型,因此所有值都可以通过其相应的键值(即 AUD、BGN 等,如json["rates"]??["AUD"]
)获取,如我的代码所示。
我的代码:
let id = json["rates"]
print("rates : \(id)");
print("AUD = \(json["rates"]??["AUD"])");
print("BGN = \(json["rates"]??["BGN"])");
print("BRL = \(json["rates"]??["BRL"])");
print("CAD = \(json["rates"]??["CAD"])");
希望能帮助到你。
快乐编码...
您也可以这样做,它可以提供您字典中尽可能多的费率。
if let rates = json["rates"] as? [String: AnyObject] {
for rate in rates {
let corresponsdingRate = rate.1 as? Float ?? 0.0
print("\(rate.0) = \(corresponsdingRate)")
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.