如何使用SwiftyJSON在Swift中使用`for-in`迭代JSON数据?
我不熟悉Swift、JSON和SwiftyJSON。尝试读取json数据并输出它只是为了学习。下面的代码工作得很好。然而,我认为可以通过某种方式使用jsonData中的如何使用SwiftyJSON在Swift中使用`for-in`迭代JSON数据?,json,swift,swifty-json,Json,Swift,Swifty Json,我不熟悉Swift、JSON和SwiftyJSON。尝试读取json数据并输出它只是为了学习。下面的代码工作得很好。然而,我认为可以通过某种方式使用jsonData中的for(key,json);但是,我不能这样做。有什么建议吗 func loadLocationData() { if let path = NSBundle.mainBundle().pathForResource("cityList", ofType: "json") { do {
for(key,json);但是,我不能这样做。有什么建议吗
func loadLocationData() {
if let path = NSBundle.mainBundle().pathForResource("cityList", ofType: "json") {
do {
let data = try NSData(contentsOfURL: NSURL(fileURLWithPath: path), options: NSDataReadingOptions.DataReadingMappedIfSafe)
let json = JSON(data: data)
if json != JSON.null {
if let cityArray = json["country"]["city"].array {
for city in cityArray {
DLog("\(city["Name"])")
if let districtArray = city["district"].array {
for district in districtArray {
DLog("-- \(district["Name"])")
if let placeArray = district["place"].array {
for place in placeArray {
DLog(" -- \(place["Name"])")
}
}
}
}
}
}
} else {
print("could not get json from file, make sure that file contains valid json.")
}
} catch let error as NSError {
print(error.localizedDescription)
}
} else {
print("Invalid filename/path.")
}
}
这不属于代码审查,因为它已损坏。代码审查只接受带有书面工作代码的问题。我们很乐意帮助你改进它一旦你让它工作。OP说代码工作-所以代码审查被打破了?只是在那边有点多管闲事,看起来还可以-有什么问题吗?如果你能让我知道。。所以我不会错派人去那里。干杯。代码被破坏了,所以在代码评审时它是离题的。我们有一个离题的原因,特别是代码损坏。代码审查没有什么问题。@DavidWilson“但是,我做不到。”听起来好像还没有达到预期效果。问题是解决代码中的一个特定“问题”,并相应地解决堆栈溢出的主题!这基本上是一个显示停止时,移动到代码审查。除此之外,代码的目标(至少对我来说)还不太清楚。OP提出了一个特定的问题,这个问题可能在CR得到回答,也可能得不到回答。我想说的是,这个问题在这里更好:)使用guard关键字将减少一些嵌套