【发布时间】:2012-11-12 09:05:47
【问题描述】:
我正在寻找一种在满足以下格式要求的 NSString 中表示双精度值的方法:
1.) 没有尾随零:x = 0.5000000 -> @"0.5"
2.) 至少十进制:x = 45 -> @"45.0"
3.) 最多 8 个十进制字符(最后一位四舍五入):x = 0.000000005 -> @"0.00000001"
我尝试使用@"%.8f"、@"%g" 或@"%.8g",但至少满足一项要求都失败了。
我想我可以用@"%.8f" 做,然后循环字符串的字符,从字符串的最后一个字符开始到前面删除“0”字符,
如果字符串不包含小数点,则以“%.8g”开头并附加“.0”。
有没有更智能的解决方案?
【问题讨论】:
标签: objective-c cocoa nsnumberformatter