Swift 3从嵌套的JSON数组中检索值

时间:2017-02-10 14:00:22

标签: ios json swift

您好我正在学习Swift 3,我有一个应用程序,我正在“开发”以提供特定位置的天气。

我已经获得了MetOffice API并检索了所需的JSON。我能够无问题地检索位置,但是当我尝试获取临时数据时,我得不到任何结果。临时数据在JSON中列为DM,是字典中字典内的数组中的数组。

我当前的代码看起来像

   if let SiteRep = dict["SiteRep"] as? Dictionary<String, Any> {
        if let DV = SiteRep["DV"] as? Dictionary<String,Any> {
            if let location = DV["Location"] as? Dictionary<String, Any> {
                if let period = location["Period"] as? Dictionary<String, Any> {
                    if let Rep = period["Rep"] as? [Dictionary<String, Any>] {
                        if let DM = Rep[0]["DM"] as? Double {
                            self._currentTemp = DM
    } } } } } }

相关的变量在此之上声明。

我不确定如何更正此代码以从JSON中取回此必需值

Json如下,我试图检索的值以粗体突出显示

{  
   "SiteRep":{  
      "Wx":{  },
      "DV":{  
         "dataDate":"2017-02-10T12:00:00Z",
         "type":"Forecast",
         "Location":{  
            "i":"350497",
            "lat":"99.6115",
            "lon":"-21.0017",
            "name":"TOWN",
            "country":"ENGLAND",
            "continent":"EUROPE",
            "elevation":"160.0",
            "Period":[  
               {  
                  "type":"Day",
                  "value":"2017-02-10Z",
                  "Rep":[  
                     {  
                        "D":"NE",
                        "Gn":"16",
                        "Hn":"77",
                        "PPd":"51",
                        "S":"9",
                        "V":"GO",
                        **"Dm":"2",**
                        "FDm":"-2",
                        "W":"24",
                        "U":"1",
                        "$":"Day"
                     },
                     {  
                        "D":"NNW",
                        "Gm":"20",
                        "Hm":"89",
                        "PPn":"58",
                        "S":"11",
                        "V":"GO",
                        "Nm":"-1",
                        "FNm":"-6",
                        "W":"24",
                        "$":"Night"
                     }

0 个答案:

没有答案