使用 Swift 练习请求解析Josn文件, 结果查了很多方法试着使用都报错,几行代码最终测试完成花费了很长时间. 最终完成测试环境: XCode7.2, 希望对相同环境使用的有所帮助
代码奉上, 如下:
class MovieViewController: UITableViewController {
var dataSource:NSMutableArray? =NSMutableArray(capacity: 0)
override func viewDidLoad() {
super.viewDidLoad()
readData()
}
// 数据读取
func readData() {
let url =NSURL(string:"http://project.lanou3g.com/teacher/yihuiyun/lanouproject/movielist.php")
let request = NSURLRequest(URL: url!)
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithRequest(request, completionHandler: {
data, response, error in
self.analysisData(data!)
})
task.resume()
}
// 数据解析
func analysisData(data:NSData) {
let mDic =try! NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions.MutableContainers) as! NSMutableDictionary
let resultArr = mDic["result"]as! NSMutableArray
for dic in resultArr {
// 创建对象
let movie = Movie()
// 数据转模型
movie.setValuesForKeysWithDictionary(dicas! [String :AnyObject])
// 添加入数组中
self.dataSource?.addObject(movie)
}
dispatch_async(dispatch_get_main_queue()) { () ->Void in
self.tableView.reloadData()
}
}