SwiftyJSON 读取 JSON 数组问题
SwiftyJSON Reading JSON Array issue
我正在尝试使用我的代码读取如下所示的 json 数组数据,但是在我可以打印整个数据时我一直得到空结果。请问我的问题在哪里?
我已经阅读了这个主题,但我无法得到结果。 Topic Link
{"Cars":[{"Brand":"Alfa Romeo"},{"Brand":"Audi"},{"Brand":"BMW"},{"Brand":"Citroen"},{"Brand":"Dacia"},{"Brand":"Fiat"},..........
我的代码
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"])
}
}
这样您就可以使用 SwiftyJSON:
获取您的 json 对象
//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
希望这是你需要的。
我正在尝试使用我的代码读取如下所示的 json 数组数据,但是在我可以打印整个数据时我一直得到空结果。请问我的问题在哪里?
我已经阅读了这个主题,但我无法得到结果。 Topic Link
{"Cars":[{"Brand":"Alfa Romeo"},{"Brand":"Audi"},{"Brand":"BMW"},{"Brand":"Citroen"},{"Brand":"Dacia"},{"Brand":"Fiat"},..........
我的代码
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"])
}
}
这样您就可以使用 SwiftyJSON:
获取您的 json 对象//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
希望这是你需要的。