正在解析 json 文件 returns 不需要的结果
Parsing a json file returns unwanted result
经过一番努力,我终于得到了要解析的 Json 文件。虽然我猜它正在解析.. 当我试图访问一个有很多 "objects" 的值时,我得到的结果是 nil。这是我的代码使用 swiftyJson library. And here is how my json 的样子。我使用的代码是
import UIKit
class MapViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
if let jsonData = getJSON("hls", extn: "json") {
println(jsonData)
let jsonDataResult = JSON(jsonData)
var js = jsonDataResult["name"].string
println("\(js)")
}
}
func getJSON(fileName: String, extn: String) -> NSData?
{
if let fileURL = NSBundle.mainBundle().URLForResource(fileName, withExtension: extn) {
if let data = NSData(contentsOfURL: fileURL) {
return data
}
}
return nil
}
}
我不明白我在控制台中获取以下输出时做错了什么。如有任何帮助和提示,我们将不胜感激!
在使用 SwiftyJSON 时,我相信您需要使用其他初始化程序。也就是说:
let jsonDataResult = JSON(jsonData)
为了使其正常工作,jsonData 之前已经 运行 通过并解析过一次。您想要的 init 如下所示,因为您正在向它传递输出中看到的原始 nsData。
let jsonDataResult = JSON(data: jsonData)
经过一番努力,我终于得到了要解析的 Json 文件。虽然我猜它正在解析.. 当我试图访问一个有很多 "objects" 的值时,我得到的结果是 nil。这是我的代码使用 swiftyJson library. And here is how my json 的样子。我使用的代码是
import UIKit
class MapViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
if let jsonData = getJSON("hls", extn: "json") {
println(jsonData)
let jsonDataResult = JSON(jsonData)
var js = jsonDataResult["name"].string
println("\(js)")
}
}
func getJSON(fileName: String, extn: String) -> NSData?
{
if let fileURL = NSBundle.mainBundle().URLForResource(fileName, withExtension: extn) {
if let data = NSData(contentsOfURL: fileURL) {
return data
}
}
return nil
}
}
我不明白我在控制台中获取以下输出时做错了什么。如有任何帮助和提示,我们将不胜感激!
在使用 SwiftyJSON 时,我相信您需要使用其他初始化程序。也就是说:
let jsonDataResult = JSON(jsonData)
为了使其正常工作,jsonData 之前已经 运行 通过并解析过一次。您想要的 init 如下所示,因为您正在向它传递输出中看到的原始 nsData。
let jsonDataResult = JSON(data: jsonData)