-2

我有一个我正在使用的股票市场计算器,它在标签中显示了操作的总利润。问题是输出是3984.00,这不是我们在巴西的正确格式,即3.984,00. 那么,我如何获得3984.00输出3.984,00

4

1 回答 1

1

就像 DrummerB 说的,看看NSNumberFormatter

假设您当前的语言环境是巴西,您可以按照以下方式做一些事情:

NSString *output = @"3984.00";

NSNumber *number = [NSNumber numberWithDouble:[output doubleValue]];
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
NSString *groupingSeparator = [[NSLocale currentLocale] objectForKey:NSLocaleGroupingSeparator];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
[formatter setMinimumFractionDigits:2];
[formatter setMaximumFractionDigits:2];
[formatter setGroupingSeparator:groupingSeparator];
[formatter setGroupingSize:3];
[formatter setAlwaysShowsDecimalSeparator:YES];
[formatter setUsesGroupingSeparator:YES];

NSString *desiredString = [formatter stringFromNumber:number];

编辑:忘记添加 minimumFractionDigits。

于 2012-10-31T14:41:10.773 回答