解析json文件会返回不需要的结果

时间:2015-02-11 13:51:37

标签: ios json swift swifty-json

经过一番挣扎后,我终于得到了我的Json文件进行解析。虽然我猜它正在解析..当我试图访问一个有很多"对象"的值时,我得到了nil。这是我使用swiftyJson库的代码。以下是我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
    }

}

我不明白我在控制台中获取以下输出的错误。任何帮助和提示将不胜感激!

enter image description here

1 个答案:

答案 0 :(得分:2)

使用SwiftyJSON时,我相信您需要使用其他初始化程序。也就是说:

let jsonDataResult = JSON(jsonData)

为了使它工作,jsonData已经运行并解析过一次。您想要的init如下所示,因为您正在输出原始nsData,如输出中所示。

let jsonDataResult = JSON(data: jsonData)