如何将我的JSON结果转换为数组或对象

时间:2017-06-06 17:53:03

标签: json swift3 ios10 xcode8.2

我一直在寻找每一个地方,但无法得到正确的答案。我收到了具有以下结构的Json结果

    {
    result =     {
        "2ab5a003-0120-4c01-80f2-a237dcf4ba14" =         {
            icon = garden;
            id = "2ab5a003-0120-4c01-80f2-a237dcf4ba14";
            index = 1;
            name = "Tafel hoek";
            parent = "855113f1-f488-4223-b675-2f01270f573e";
        };
        "2afd6093-ca6d-4e52-aaca-336ab76ea454" =         {
            icon = default;
            id = "2afd6093-ca6d-4e52-aaca-336ab76ea454";
            index = 11;
            name = Badkamer;
            parent = "9919ee1e-ffbc-480b-bc4b-77fb047e9e68";
        }; 
};
    status = 200;
}

因为我不知道结果中的第一把钥匙,所以我迷失了以获得单独的物品。有没有人可以帮助我?提前致谢

我的代码是:

{print("错误:")                 打印(错误!)

        } else {  // no error


            if let urlContent = data {  // 3

                do {  // 4

                    let json = try JSONSerialization.jsonObject(with: urlContent, options: JSONSerialization.ReadingOptions.mutableContainers) as AnyObject

                    print(json)


                } catch {

                    print("JSON processing failed")

                }  // end 4 do

            }  // end 3 let urlContent

        }  // end 2 if error}

2 个答案:

答案 0 :(得分:1)

由于你有密钥result的字典,你可以像往常一样枚举它:

if let result = json["result"] as? [String:[String:Any]] {
    for (key, value) in result {
       let name = value["name"] as! String
       let index = value["index"] as! Int
       print (key, name, index)
    }
}

答案 1 :(得分:0)

你可以发布你的代码吗,我认为这不是一个有效的json格式,并告诉我你在哪里努力解析。请注意那个关键并像往常一样试试