如何编码NSDecimal?

时间:2009-08-26 20:30:53

标签: iphone cocoa-touch uikit

我只能猜测,但如果我错了,请纠正我:

[encoder encodeValueOfObjCType:@encode(NSDecimal) at:&theDecimal];

其中encoder是NSCoder的一个实例。

但有一件事很奇怪:为什么没有提供钥匙?如果没有钥匙,我怎么能得到它呢?

2 个答案:

答案 0 :(得分:1)

再次在NSDecimalNumber文档的最顶层,它声明它符合NSCoding协议,这意味着你可以正常方式将它放入NSCoder:

[encoder encodeObject:theDecimal forKey:@"aKey"];

编辑:糟糕,我看到你的意思是NSDecimal,而不是NSDecimalNumber。我的错。不过,一个非常简单的方法是将NSDecimal包装在NSDecimalNumber中并以这种方式存储它。

答案 1 :(得分:0)

旧的非键控编码协议要求您按照编码时的顺序提取密钥。