4

我目前正在尝试使用货币样式将 JSON 提要中的浮点数格式化为带有 NSNumberFormatter 的数字。

我目前的解决方案是这样的:

float test = 100.50;
NSNumber *number = [NSNumber numberWithFloat:test];

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
[formatter setCurrencyCode:@"DKK"];
NSString *price = [formatter stringFromNumber:number];

我的问题是,当所选货币的正确结果应为“DKK100,50”时,输出为“DKK100.50”(请注意,当前结果使用点作为十进制分隔符,而不是应有的逗号)。

我究竟做错了什么?

4

1 回答 1

1

您没有NSLocale为您的指定NSNumberFormatter,它将使用设置中的当前“区域”来设置货币格式(包括分隔符)。您当前的“区域”设置可能是使用点作为分隔符的区域,将其更改为使用逗号的区域,例如en_US

[formatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];

例如

于 2012-03-07T11:17:54.813 回答