iOS swift将JSON分离成数组
Posted
技术标签:
【中文标题】iOS swift将JSON分离成数组【英文标题】:iOS swift separate JSON into array 【发布时间】:2016-10-27 13:50:53 【问题描述】:我有一个像这样的JSON
文件:
"timeline":
"Milan":
"placeA": [
"name": "Place 1",
"kind": "historic",
,
"name": "Place 2",
"kind": "historic",
,
"name": "Place 3",
"kind": "historic",
]
,
"Paris":
"placeB": [
"name": "Place 1",
"kind": "historic",
,
"name": "Place 2",
"kind": "historic",
]
在我的应用程序中,我需要将此 JSON
分隔并插入到这样的数组中,以便使用 tableView
部分分隔数据:
var arr = [[placeA],[placeB],...]
我该怎么做?
PS 我用的是 SwiftyJson
【问题讨论】:
用你的方法兄弟更新你的问题 【参考方案1】: struct City
let name : String
let kind : String
var cities = [City]()
let path = (try? Data(contentsOf: URL(string: "http://www.yourwebsite.json")!)) as Data!
// let jsonData = NSData(contentsOfFile: path) as NSData!
var error : NSError?
let ReadableJSON2 = JSON ( data:path!, options: JSONSerialization.ReadingOptions.mutableContainers, error: nil )
print(error)
do
let jsonObject = try JSONSerialization.jsonObject(with: path!, options: JSONSerialization.ReadingOptions.mutableContainers) as! [String:AnyObject]
for city in jsonObject["cities"] as! [[String:AnyObject]]
//let coordinates = position["Position"] as! [String:CLLocationDegrees]
let Cityname = city["name"] as! String
let Citykind = city["kind"] as! String
let city = City(name: cityName,description: description, )
cities.append(city)
catch let error as NSError
print(error)
【讨论】:
现在 Swift 已经停止使用像这样的 NSError 来处理 JSON 已经有一段时间了……见***.com/a/31073812/2227743 @MohammadReza 然后请阅读 SwiftyJSON 文档,一切都解释清楚了。 SO上也已经有很多类似的问题和答案了。以上是关于iOS swift将JSON分离成数组的主要内容,如果未能解决你的问题,请参考以下文章
如何将 JSON 数据与从 websocket 接收的 ArrayBuffer 分离
旋转期间 searchController.active 之后,Swift searchBar 与 tableView 的顶部分离