2014-09-02 77 views
1

有什么方法可以将JSON反序列化为Swift对象,而不是NSDictionay如何将JSON反序列化为Swift对象?

例如:一个JSON是这样的:{"value": "xxx"}

我想利用这个资源,如:

var json = "{\"value\": \"xxx\"}" 
var obj = parseToObj(json) 
println(obj.value) 
+0

什么是'parseToObj'? – akashivskyy 2014-09-02 10:14:59

回答

2

我写了一个小型图书馆,迅速处理这样的事情。 (没有双关语意)你可以在这里得到它:JSONHelper

在阅读你的问题后,我意识到我应该直接从JSON字符串添加反序列化支持,而不仅仅是JSON响应对象,所以我做了。

这里是你如何做到这一点:

struct MyObjectType: Deserializable { 
    var value: String? 

    init(data: [String: AnyObject]) { 
     value <-- data["value"] 
    } 
} 

var json = "{\"value\": \"xxx\"}" 
var myClass: MyClass? 

myClass <-- json 

println("\(myClass.value)")