1
我使用swift從JSON中檢索數據。我是JSON的新手。我不知道如何檢索這個嵌套值。我的JSON格式如下。提出的問題,同時通過使用swift從JSON中獲取數據
//JSON DATA
{
"data": [
{
"category_id": 1,
"category_name": "category1",
"category_icon": "",
"category_child": [
{
"sub_category_id": 11,
"sub_category_name": "subcategoryname1",
"sub_category_icon": ""
},
{
"sub_category_id": 12,
"sub_category_name": "subcategoryname2",
"sub_category_icon": ""
}
]
},
{
"category_id": 2,
"category_name": "category2",
"category_icon": "",
"category_child": [
{
"sub_category_id": 21,
"sub_category_name": "subcategoryname12",
"sub_category_icon": ""
},
{
"sub_category_id": 22,
"sub_category_name": "subcategoryname22",
"sub_category_icon": ""
}
]
}
]
}
我試過一些方法。但是,我沒有在字典中找到合適的元素。我的代碼如下:
ATTEPMT 1:
var dict: NSDictionary! = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary
for(var i = 0; i < (dict.valueForKey("data") as NSArray).count; i++)
{
self.categFromJson.addObject((dict.valueForKey("data") as NSArray) .objectAtIndex(i))
}
for(var i = 0; i < (categFromJson.valueForKey("category_child") as NSArray).count; i++)
{
self.sub_ct_FromArr.addObject((categFromJson.valueForKey("category_child") as NSArray) .objectAtIndex(i))
}
for(var i = 0; i < (sub_ct_FromArr.valueForKey("sub_category_name") as NSArray).count; i++)
{
self.sub_ct_name_arr.addObject((sub_ct_FromArr.valueForKey("sub_category_name") as NSArray) .objectAtIndex(i))
}
//ATTEMPT 2
var dict: NSDictionary! = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: nil) as NSDictionary
for(var i = 0; i < (dict.valueForKey("data") as NSArray).count; i++)
{
categFromJson.addObject((dict.valueForKey("data") as NSArray) .objectAtIndex(i))
sub_ct_FromArr.addObject((categFromJson.valueForKey("category_child") as NSArray) .objectAtIndex(i))
sub_ct_name_arr.addObject((sub_ct_FromArr.valueForKey("sub_category_name") as NSArray) .objectAtIndex(i))
}
但是,對於這兩種嘗試,最終輸出都是錯誤和相同的。 Bcos,編碼如下。
//CODING
println(sub_ct_name_arr.objectAtIndex(0))
//Output for this Code
(subcategoryname1,subcategoryname2)
//REQUIRED Output
subcategoryname1
請親引導我。我不知道那是什麼問題。
是.. !!明白了@ericd。如何提高從JSON檢索數據的知識?有沒有網站或教程?請指導我。 –
你可以關注[Ray Wenderlich的SwiftyJSON教程](http://www.raywenderlich.com/82706/working-with-json-in-swift-tutorial)。但無論如何,這裏沒有太多的祕密。一旦知道了哪些數據類型由您的JSON對象持有,解碼它就相當簡單。我唯一的建議是經常練習,並閱讀關於此主題的所有文檔。 :) – Moritz