他们是一种将字符串格式化为$ price的内置方式,例如12345.45
转换为$12,345.45
?
答案 0 :(得分:70)
假设您正在使用Cocoa(或仅使用Foundation),您可以使用NSNumberFormatter并将其样式设置为货币:
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
... = [formatter stringFromNumber:number];
默认情况下,它使用系统的区域设置,但您可以更改该区域以及许多其他属性,请参阅NSNumberFormatter API文档。
答案 1 :(得分:5)
假设价格保持在浮点数中,您可能需要+localizedStringWithFormat:。
NSString *priceString = [NSString localizedStringWithFormat:@"$ %'.2f",price];
嗯...... Apple说他们遵循IEEE standard for printf,所以它应该接受'旗帜,但它不适用于Tiger。 NSNumberFormatter
它是。
答案 2 :(得分:3)
你需要摆脱'
字符
所以,就这样:
NSString *priceString = [NSString localizedStringWithFormat:@"$ %.2f", price];
答案 3 :(得分:0)
NSString *formatedNumbers = [NSNumberFormatter localizedStringFromNumber:myNumber numberStyle:NSNumberFormatterCurrencyStyle];