swift解析json

由于使用网络接口隔段时间就可能失效了,我在这里就自己写个json。
json格式的数据解析太常见了,话不多说直接码哈!

/**
     * 解析json
     */
    func AnalyJson() {
        // 获取json路径
        let path = Bundle.main.path(forResource: "menu", ofType: "json")
        if let jsonData = try? Data(contentsOf: URL(fileURLWithPath: path!)) {
        // 解析json内容
        do {
            // 将2进制数据转化为字典对象
            if let jsonObj:NSDictionary = try JSONSerialization.jsonObject(with: jsonData, options: JSONSerialization.ReadingOptions()) as? NSDictionary{
                // j根据键名获取字典对象中的键值,并将键值转化为另一个字典对象
                if let menuDic:NSDictionary = jsonObj["menu"] as? NSDictionary{
                    // j根据键名获得第二个字典对象的键值,并将z键值转化为一个数组对象
                    if let menuItems:NSArray = menuDic["menuitem"] as? NSArray{
                        // 遍历数组中的元素,并在控制台打印输出元素内容
                        for item in menuItems {
                            print("item:\(item)")
                        }
                    }
                }
            }
        } catch  {
            print("Error")
        }
     }
    }

解析结果:

item:{
    onclick = CreateNewDoc;
    value = "\U4f60\U597d\U5440\Uff01";
}
item:{
    onclick = "Create......";
    value = Jack;
}
item:{
    onclick = "\U70b9\U51fb\U4e86\U6211\Uff0c\U6211\U4f1a\U5bf9\U4f60\U8bf4\Uff1a";
    value = "\U6211\U5f88\U597d\U7684\Uff01\U8c22\U8c22\Uff01";
}

使用第三方框架:

你可能感兴趣的:(swift解析json)