快速JSON读取JSON数组问题
我试图用我的代码读取json数组数据,如下所示,但在打印整个数据时,我一直得到空结果。请问我的问题在哪里 我读过这个主题,但没有得到结果快速JSON读取JSON数组问题,json,swift,swifty-json,Json,Swift,Swifty Json,我试图用我的代码读取json数组数据,如下所示,但在打印整个数据时,我一直得到空结果。请问我的问题在哪里 我读过这个主题,但没有得到结果 我的代码 func getData(){ var url = "http://test.net/services/test.php" var request = HTTPTask() request.GET(url, parameters: nil, completionHandler: {
我的代码
func getData(){
var url = "http://test.net/services/test.php"
var request = HTTPTask()
request.GET(url, parameters: nil, completionHandler:
{
(response:HTTPResponse) in
var jsonData = response.responseObject as! NSData
var json = JSON(data: jsonData)
println("All data \(json)")
dispatch_async(dispatch_get_main_queue(),
{
println(json["Cars"]["Brand"].stringValue)
})
})
}
json[“Cars”]
是一个数组,因此,例如,要通过SwiftyJSON获取第一项:
println(json["Cars"][0]["Brand"].stringValue)
在JSON字符串中,{
和}
是字典的分隔符,而[
和]
是数组的分隔符
编辑:
在您的评论之后,是的,您可以在数组上循环:
if let cars = json["Cars"].array {
for car in cars {
println(car["Brand"])
}
}
这样,您可以使用以下方法获取json对象:
希望这就是您所需要的。它现在正在工作。我想我必须把它放到for循环中才能得到所有的值。
if let cars = json["Cars"].array {
for car in cars {
println(car["Brand"])
}
}
//Get your Data First
let json = JSON(data: data)
//Store your values from car key into Car object so we can get total count.
let Cars = json["Cars"].arrayValue
//Use For loop to get your car Brand
for i in 0..<Cars.count
{
println(json["Cars"][i]["Brand"].stringValue)
}
Alfa Romeo
Audi
BMW
Citroen
Dacia
Fiat