繁体   English   中英

尝试在 Swift 中解析 JSON,但出现错误

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM