我有一个值被存储为一个NSDecimalNumber,当我将它转换为双精度时,它正在失去精度。如何将NSDecimalNumber转换为双倍
对于我正在调试的当前数据段,值为0.2676655。当我发送一个doubleValue消息时,我得到0.267665。它截断而不是四舍五入,这对一些使用哈希来检测数据更改以进行同步操作的代码造成严重破坏。
NSDecimalNumber实例来自第三方框架,所以我不能用原语double来代替它。最终它被插入到一个NSMutableString中,所以我在一个字符串表示后,但它需要通过一个格式说明符“%.6lf”,基本上我需要小数点后六位数字,因此它看起来像0.267666。
我该如何做到这一点而不失精度?如果有一种很好的方式来格式化NSDecimalNumber而不转换为双精度,那也可以。