在字符串iOS上用逗号分隔数字

时间:2013-01-09 07:41:59

标签: ios objective-c

当我转换时,我有一个NSInteger(比如值60000) 然而,它要串起来,我希望得到“60,000” “60000”有办法吗?感谢。

4 个答案:

答案 0 :(得分:19)

使用数字格式化程序:

NSNumberFormatter *fmt = [[NSNumberFormatter alloc] init];
[fmt setNumberStyle:NSNumberFormatterDecimalStyle]; // to get commas (or locale equivalent)
[fmt setMaximumFractionDigits:0]; // to avoid any decimal

NSInteger value = 60000;

NSString *result = [fmt stringFromNumber:@(value)];

答案 1 :(得分:3)

您可以使用数字格式化程序:

NSNumberFormatter* numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle: NSNumberFormatterDecimalStyle];
NSString *numberString = [numberFormatter stringFromNumber: [NSNumber numberWithInteger: i]];

答案 2 :(得分:2)

试试这个,

NSString *numString = [NSString stringWithFormat:@"%d,%d",num/1000,num%1000];

答案 3 :(得分:-1)

使用NSNumberFormatter将数字数据格式化为本地化字符串表示。

int aNum = 60000;
NSString *display = [NSNumberFormatter localizedStringFromNumber:@(aNum)
                                                     numberStyle:NSNumberFormatterCurrencyStyle];

执行此操作后,您将获得“$ 60,000.00”

之后,您可以通过执行此操作来删除$和'。'(十进制)的符号。

 NSString *Str = [display stringByReplacingOccurrencesOfString:@"$" withString:@""];

 NSString *Str1 = [Str stringByReplacingOccurrencesOfString:@"." withString:@""];

NSString *newString = [Str1 substringToIndex:[Str1 length]-1];

NSString *newString1 = [newString substringToIndex:[newString length]-1];

'newString1'将为您提供所需的结果。