如何从 JSON 数组 SwiftyJSON 中获取数据?

Posted

技术标签:

【中文标题】如何从 JSON 数组 SwiftyJSON 中获取数据?【英文标题】:how to get data from JSON array SwiftyJSON? 【发布时间】:2016-02-25 21:27:54 【问题描述】:

我希望能够从 JSON 数组中获取一些数据:here 所以在下面,我试图显示 EARLIEST > DATE

func parseJSONtowns() 
    let url = NSURL(string: "https://api.tfl.gov.uk/journey/journeyresults/\(selectedStation)/to/\(selectedStation1)")
    let jsonData = NSData(contentsOfURL: url!)
    let readableJSON = try! NSJSONSerialization.JSONObjectWithData(jsonData!, options: []) as! [String:AnyObject]
    let object = JSON(readableJSON)
    let searchCriteria = object["earliest"]
    for option in searchCriteria.arrayValue 
        let commonName = option["date"].stringValue
        commonNameArray.append(commonName)
    
    selectedStation = selectedStation.stringByReplacingOccurrencesOfString("%20", withString: " ")
    NumberOfRows = commonNameArray.count
    NSLog("\(url)")
    NSLog("number of rows: \(NumberOfRows)")

【问题讨论】:

【参考方案1】:

earliestdate 在字典中 timeAdjustments 在字典中 searchCriteria

let object = JSON(readableJSON)
let earliest = object["searchCriteria"]["timeAdjustments"]["earliest"]["date"].stringValue
print(earliest)

【讨论】:

谢谢,将日期更改为时间现在它对每个时间都说相同,而应该是不同的时间,当我将它添加到 for 循环中时,它是一样的吗?! NSJSONSerialization.JSONObjectWithData(jsonData!, options: []) as! [String:AnyObject] let object = JSON(readableJSON) let searchCriteria = object["journeys"] let earliest = object["searchCriteria"]["timeAdjustments"]["earliest"]["time"].stringValue for option in searchCriteria.arrayValue let arrivalDateTime = option["arrivalDateTime"].stringValue arrivalArray.append(arrivalDateTime) earliestArray.append(earliest) 整个文本中只有一个earliest 键,而在重复循环中您只会得到一个不同的arrivalDateTime。也许你的意思是startDateTime

以上是关于如何从 JSON 数组 SwiftyJSON 中获取数据?的主要内容,如果未能解决你的问题,请参考以下文章

Swift - 使用 SwiftyJSON 从 JSON 中获取字符串数组

如何从 SwiftyJSON 对象数组中搜索?

如何使用 SwiftyJSON(在 Swift 中)基于 JSON 对象数组创建对象数组?

如何使用 SwiftyJSON 在 Swift 中解析这个 JSON 对象?

swiftyjson 从 json 数组中获取字符串

使用swiftyjson从索引对象数组ios中检索json的标题