我正在使用这个股票市场计算器,它在标签上显示了我操作的总利润。问题是输出为3984.00
,这不是我们在巴西的3.984,00
格式的正确格式。那么,如何将输出3984.00
转换为3.984,00
?
答案 0 :(得分: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。