用逗号显示整数:30000 - > 30000

时间:2013-01-13 11:00:59

标签: iphone objective-c cocoa

如何用逗号显示UILabel中的整数?

像这样: 30000 - > 30000

我的英语不太好,所以我不知道该搜索什么。

感谢您的回答。

3 个答案:

答案 0 :(得分:2)

使用NSNumberFormatter并执行以下操作:

NSInteger integerValue=30000;
NSNumberFormatter *numberFormatterComma = [NSNumberFormatter new];
[numberFormatterComma setNumberStyle:NSNumberFormatterDecimalStyle];
NSString *formatted = [numberFormatterComma stringFromNumber:[NSNumber numberWithInteger:integerValue]];
NSLog(@"--> %@",formatted);

现在,您可以将formatted字符串添加到标签中。

答案 1 :(得分:0)

您想要查看NSNumberFormatter

这是一个例子

    self.numberFormat = [[NSNumberFormatter alloc] init];  

        //set up formatter for display text
    [self.numberFormat setNumberStyle:NSNumberFormatterDecimalStyle];
    [self.numberFormat setRoundingMode:NSNumberFormatterRoundFloor];
    [self.numberFormat setMinimumFractionDigits:0];
    [self.numberFormat setMinimumIntegerDigits:1];
    [self.numberFormat setMaximumFractionDigits:24];
    [self.numberFormat setMaximumSignificantDigits:24];

    NSString* formattedText = 
     [self.numberFormat stringFromNumber:[self.numberFormat numberFromString:rawString]];

注意不要经常分配/初始化它们,它们是非常重的对象。最好创建一次并保留在一个属性中以便重用。如果你正在制作OSX应用程序(而不是ios),你也可以在Interface Builder中获得格式化对象,你可以拖动它们并在属性检查器中设置它们的参数。

答案 2 :(得分:0)

//以逗号分隔的数字转换

-(NSString*)convertNumericIntoCommaSeperatedValue:(NSString*)string{

NSNumberFormatter *frmtr = [[NSNumberFormatter alloc] init];

[frmtr setGroupingSize:3];

[frmtr setGroupingSeparator:@","];

[frmtr setUsesGroupingSeparator:YES];

NSString *commaSeperatedString = [frmtr stringFromNumber:[NSNumber numberWithLongLong:[string longLongValue]]];

[frmtr release],frmtr=nil;

return commaSeperatedString;
}