Ios 如何获取具有自定义数字格式的数字的本地化字符串?
我正在使用Ios 如何获取具有自定义数字格式的数字的本地化字符串?,ios,swift,double,nsnumberformatter,nslocalizedstring,Ios,Swift,Double,Nsnumberformatter,Nslocalizedstring,我正在使用NSNumberFormatter.localizedStringFromNumber(aDouble,numberStyle:.DecimalStyle)向最终用户显示数字。除非数字在小数点后有许多位数,否则这种方法很有效 例如,如果aDouble为0.123,则生成的字符串为0.123(英语)。但是如果aDouble为0.1234,则字符串为0.123 如何获得数字的本地化字符串,但控制显示的位数?我想在四舍五入之前显示10-20位数字 我没有看到用于创建自定义numberStyl
NSNumberFormatter.localizedStringFromNumber(aDouble,numberStyle:.DecimalStyle)
向最终用户显示数字。除非数字在小数点后有许多位数,否则这种方法很有效
例如,如果aDouble
为0.123,则生成的字符串为0.123(英语)。但是如果aDouble
为0.1234,则字符串为0.123
如何获得数字的本地化字符串,但控制显示的位数?我想在四舍五入之前显示10-20位数字
我没有看到用于创建自定义
numberStyle
的API,它仅限于DecimalStyle
和ScientificStyle
等显示。我确实需要它是本地化的表示形式,以便针对当前语言/区域设置正确显示数字/符号。您可以创建NSNumberFormatter
的实例,并手动设置其locale
和属性:
let d = 123.456789012345678
let formatter = NSNumberFormatter()
formatter.numberStyle = .DecimalStyle
formatter.locale = NSLocale.currentLocale()
formatter.maximumFractionDigits = 10
let formatted = formatter.stringFromNumber(d)
123.4567890123
除此之外,还有其他用于设置各种数字长度的属性。请参阅文档部分。太美了,太棒了!