首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NumberFormatter - ObjectiveC

NumberFormatter - ObjectiveC
EN

Stack Overflow用户
提问于 2011-01-22 09:52:42
回答 2查看 2.6K关注 0票数 0

如何创建数字格式化程序以使用逗号设置大数字的格式?

例如,2389378.289应变为2,389,378.289

请注意,并不总是有三个小数位,也不总是有一个小数。请使用NSNumberFormatter。

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-01-22 12:10:25

代码语言:javascript
复制
NSNumberFormatter *fmt = [[[NSNumberFormatter alloc] init] autorelease];
[fmt setAlwaysShowsDecimalSeparator:NO];
[fmt setFormat:@"#,##0.###"];
NSLog(@"%@",[fmt stringFromNumber:[NSNumber numberWithFloat:35.424252]]);
NSLog(@"%@",[fmt stringFromNumber:[NSNumber numberWithFloat:21.3]]);
NSLog(@"%@",[fmt stringFromNumber:[NSNumber numberWithFloat:10392425]]);

Chuck提供的格式最多支持3位小数。如果你有一个小于3的数字,它们就不会出现。Chuck也是正确的,你想看看Unicode数字格式指南,它对于数字格式问题是无价的。

票数 1
EN

Stack Overflow用户

发布于 2011-01-22 10:07:14

它的格式应该是@"#,##0.###"。有关如何构造格式字符串的完整解释,请参阅the Unicode number format guide

(还要注意,这在逗号和点颠倒的区域设置或使用其他字符的区域设置中可以正常工作。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4765646

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档