【发布时间】:2013-05-14 16:49:49
【问题描述】:
我正在使用NSJSONSerialization 将字典转换为 JSON。
如果我在该字典中包含一个 NSDecimalNumber ( == 0 ),它将输出为 0。这是错误的。 0 是一个整数。我需要它输出为0.0。
这就是我正在做的:
NSDecimalNumber *decimal = [[NSDecimalNumber alloc] initWithFloat:0.0f];
// when fed into NSJSONSerialization it outputs as 0
有没有办法输出为0.0?
或者我的假设不正确? 0 是一个有效的浮点数吗?
【问题讨论】:
-
虽然
0在Objective-C编程语言中不被认为是float类型的常量,但它绝对是一个有效的浮点数。由于 JSON 将事物编码为名称-值对,没有类型信息,因此由接收方决定反序列化字段的最终类型。 -
那么你想要的是你的 JSON 看起来像这样吗?:{ myFloat: 0.0 ...}
标签: ios cocoa foundation nsjsonserialization