如何使用字符串放置货币符号前缀或后缀?

时间:2013-05-26 07:51:28

标签: ios objective-c nslocale currency-formatting

我想知道是否有任何官方方式从货币金额向左或向右放置货币符号,具体取决于地区和货币本身? 例如,如果它是$符号,则应该在金额的左边,为20美元。如果它是,例如,€sign,那么它应该是20€。 我找到了一个简单的方法,我只用if语句检查货币符号是否为$并将其附加到我的NSString的左侧或右侧。但这看起来像拐杖方法有点蹩脚。 我无法找到更便捷的方式。有没有? 谢谢。

1 个答案:

答案 0 :(得分:1)

苹果官方方式......

您需要使用NSNumbers和NSNumberFormatter将值转换为货币并返回表示它的字符串。这可以在我们的标签e.t.c中使用。 someDouble指的是您希望转换为货币格式的数字。

NSNumber *currencyValue = [NSNumber numberWithDouble:someDouble];
NSNumberFormatter *formater = [[NSNumberFormatter alloc] init];
[formater setNumberStyle:NSNumberFormatterCurrencyStyle];
NSString *currencyString = [formater stringFromNumber:currencyValue];

注意:您可能需要使用setLocale来使其显示给定区域的正确货币。