使用SwiftyJSON解析json

时间:2015-11-29 18:30:16

标签: json swift parsing swifty-json

我一直在尝试在项目中使用SwiftyJSON作为我的虚拟JSON文件。

但我只能获得“null”或“nil”而不是JSON文件中的数据。我可能在这里要求一点帮助。

这是我得到的回应: 0 空值 名字1:零 Make 1:null

这是虚拟JSON文件;

{
    "Cars": [

        {
            "Name": "111",
            "Make": "2000"
        },    

        {
            "Name": "222",
            "Make": "2010"
        }

    ]

}

这是我试图解析的地方;

import UIKit

class ViewController: UIViewController {

    var numberOfRows = 0

    override func viewDidLoad() {
        super.viewDidLoad()

        parseJSON()

    }

    func parseJSON() {

        let path : String = NSBundle.mainBundle().pathForResource("jsonfile", ofType: "json") as String!
        let jsonDATA = NSData(contentsOfFile: path) as NSData! 

        let readableJSON = JSON(data: jsonDATA, options: NSJSONReadingOptions.MutableContainers, error: nil)

        let allList = readableJSON["Cars"]

        numberOfRows = readableJSON["Cars"].count

        print("\(numberOfRows)")

        print("\(allList)")

        let name1 = readableJSON["Cars"][0]["Name"].string
        let make1 = readableJSON["Cars",0,"Make"]

        print("Name of 1 : \(name1)")
        print("Make of 1: \(make1)")

    }


}

1 个答案:

答案 0 :(得分:0)

希望此解决方案能为您提供帮助。

func parseJson () {

  if let path = NSBundle.mainBundle().pathForResource("jsonfile", ofType: "json")
    {
        if let jsonData = try? NSData(contentsOfFile: path, options: .DataReadingMappedIfSafe)
        {
            let originalJson = JSON(data: jsonData)
            for (_, subJson) in originalJson["Cars"] {
                print(subJson["Name"])
                print(subJson["Make"])
            }
        }
    }
}