Swift 如何访问第一组阵列?迅捷JSON
我对SwiftyJSON有问题,我不太理解他们的文档 是的Swift 如何访问第一组阵列?迅捷JSON,swift,swifty-json,Swift,Swifty Json,我对SwiftyJSON有问题,我不太理解他们的文档 是的 let jsonArray = JSON(jsonData) let json = jsonArray["Data"] (编辑)如何使用循环获取所有“名称”(仅名称而不是名称中的内容)?就像我想一套一套地打印出来一样 { "Data": { "Jenn": { "Id": "21227", "DOB": "1/1/1989" }, "Kenny": { "Id": "20909", "DOB": "1
let jsonArray = JSON(jsonData)
let json = jsonArray["Data"]
(编辑)如何使用循环获取所有“名称”(仅名称而不是名称中的内容)?就像我想一套一套地打印出来一样
{ "Data": { "Jenn": { "Id": "21227", "DOB": "1/1/1989" },
"Kenny": { "Id": "20909", "DOB": "1/10/1989" },
"Lisa": { "Id": "28223", "DOB": "11/1/1980" },
"John": { "Id": "29462", "DOB": "2/7/1991" },
"Emma": { "Id": "3744", "DOB": "10/7/2000" },
"David": { "Id": "3748", "DOB": "4/9/1980" },
"Tim": { "Id": "1182", "DOB": "5/5/1999" },
"Joan": { "Id": "7605", "DOB": "6/12/1995" },
"Jack": { "Id": "3808", "DOB": "3/20/1990" }
}
}
如果看起来让人困惑,我很抱歉。谢谢 json不是数组,而是字典。
因此,您应该使用
json[“Emma”]
json
是Dic,您可以这样使用它:
//using key to get sub data
let dic = json["Emma"]
//get keys array
let names = json.keys;
if let firstname = names.first{
print(firstname)
}
首先,根对象是字典,而不是数组,请注意大括号(
{}
)
这些名称是键数据的字典中的字典键
do {
let jsonDictionary = try JSON(data: data)
if let data = jsonDictionary["Data"].dictionary {
let names = data.keys
for name in names {
print(name)
}
}
} catch {
print(error)
}
我发现你的json格式不正确。在解析json数据之前,请验证上的json格式,如果您能够通过jsonviewer成功地格式化jsondata,而不是轻松解析。您好,感谢您指出这一点。刚刚添加了缺少的括号。嗨,谢谢你的回答。我想我问的方式是不正确的。在我完成json=jsonArray[“Data”]之后,它只打印整个内容。到目前为止,我只能通过json[“Data”]获取第一个dict。如何获取json中的第二个dict?如果json包含100+个dict数组会怎么样?如何通过使用循环获得所有这些信息?很抱歉,这听起来很混乱,我正在尽力解释我的问题:/嗨,谢谢你的回答。我想我问的方式是不正确的。在我完成json=jsonArray[“Data”]之后,它只打印整个内容。到目前为止,我只能通过json[“Data”]获取第一个dict。如何获取json中的第二个dict?如果json包含100+个dict数组会怎么样?如何通过使用循环获得所有这些信息?