Swfit 4的新Encodable/ Decodable协议使JSON(de)序列化非常令人愉快.但是,我还没有找到一种方法可以对哪些属性进行编码以及应该解码哪些属性进行细粒度控制.
我注意到从附带的CodingKeysenum中排除属性完全排除了该属性,但有没有办法进行更细粒度的控制?
例如:
class Test {
var name: String;
var age: Int;
var height: Double;
func convertToDict() -> [String: AnyObject] { ..... }
}
let test = Test();
test.name = "Alex";
test.age = 30;
test.height = 170;
let dict = test.convertToDict();
Run Code Online (Sandbox Code Playgroud)
dict将有内容:
{"name": "Alex", "age": 30, height: 170}
Run Code Online (Sandbox Code Playgroud)
这在Swift中可能吗?
我可以像字典一样访问类,例如可能使用:
test.value(forKey: "name");
Run Code Online (Sandbox Code Playgroud)
或类似的东西?
谢谢.