に、アレイ内のアレイからJSONデータを抽出します。あなたは、このサンプルからわかるように、リストの下にあり、多くのオブジェクトがあり、私がしたいことはただ一時、天候あるは、どのように私は現在、天気予報情報を取得するためにOpenweathermap.orgを使用していスウィフト2.0
{
"city":{ },
"cod":"200",
"message":0.0029,
"cnt":40,
"list":[
{
"dt":1466532000,
"main":{
"temp":296.52,
"temp_min":294.864,
"temp_max":296.52,
"pressure":1004.95,
"sea_level":1023.45,
"grnd_level":1004.95,
"humidity":58,
"temp_kf":1.65
},
"weather":[
{
"id":803,
"main":"Clouds",
"description":"broken clouds",
"icon":"04d"
}
],
"clouds":{ },
"wind":{ },
"sys":{ },
"dt_txt":"2016-06-21 18:00:00"
},
{
"dt":1466542800,
"main":{ },
"weather":[ ],
"clouds":{ },
"wind":{ },
"sys":{ },
"dt_txt":"2016-06-21 21:00:00"
},
{
"dt":1466553600,
"main":{ },
"weather":[ ],
"clouds":{ },
"wind":{ },
"sys":{ },
"dt_txt":"2016-06-22 00:00:00"
}]
}
:そしてここで私は彼らのAPIから得たJSONオブジェクトでありますメインと説明。 JSONオブジェクトのすべてをソートして保持するためにStructを作成しましたが、エラーが表示され続けます。どのように "dt"の観点からソートし、JSONからデータを抽出するのですか?ありがとう。
は、ここに私の構造体である:
import Foundation
struct FutureWeather {
//future stuff
var futureDt: NSDate //
var futureMainWeather: String//
var futureDescription: String//
private var futureTemp: Double//
var futureTempCelsius: Double {
get {
return futureTemp - 273.15
}
}
var futureTempFahrenheit: Double {
get {
return (futureTemp - 273.15) * 1.8 + 32
}
}
init(futureWeatherData : [String:AnyObject]) {
//first set of data
let futureWeatherDictUno = futureWeatherData["list"]![0] as! [String: AnyObject]
print(futureWeatherDictUno)
let events = futureWeatherDictUno.sort({$0["dt"] < $1["dt"]})
futureDt = NSDate(timeIntervalSince1970: futureWeatherDictUno["dt"] as! NSTimeInterval)
let mainDictOne = futureWeatherDictUno["main"] as! [String: AnyObject]
futureTemp = mainDictOne["temp"] as! Double
let weatherDictOne = futureWeatherDictUno["weather"]![0] as! [String: AnyObject]
futureMainWeather = weatherDictOne["main"] as! String
futureDescription = weatherDictOne["description"] as! String
//the second set of data
let futureWeatherDictDos = futureWeatherData["list"]![1] as! [String: AnyObject]
futureDt = NSDate(timeIntervalSince1970: futureWeatherDictUno["dt"] as! NSTimeInterval)
let mainDictTwo = futureWeatherDictDos["main"] as! [String: AnyObject]
futureTemp = mainDictTwo["temp"] as! Double
let weatherDictTwo = futureWeatherDictDos["weather"]![0] as! [String: AnyObject]
futureMainWeather = weatherDictTwo["main"] as! String
futureDescription = weatherDictTwo["description"] as! String
}
}
うーん...何のエラーを取得するために、将来の前に、ここでこの答えを投稿していますか? – Alexander