[英]What is the more elegant way to serialize my own objects with arrays in Swift
我有一个看起来像这样的类:
class Foo {
var bar = Int()
}
class Bar {
var baz = String()
var arr = [Foo]()
}
我有一个Bar结构的对象,我需要序列化为JSON:
let instance = Bar()
通过标准库或某些第三方库实现它的更优雅方式是什么?
提前致谢。
我建议采用这种方法:
class Foo {
var bar = Int()
}
class Bar {
var baz = String()
var arr = [Foo]()
var jsonDictionary: NSDictionary {
return [
"baz" : self.baz,
"arr" : self.arr.map{ $0.bar }
]
}
}
let bar = Bar()
bar.baz = "some baz"
bar.arr.append(Foo())
var error: NSError?
let data = NSJSONSerialization.dataWithJSONObject(bar.jsonDictionary, options: nil, error: &error)
if error == nil && data != nil {
// success
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.