我有一个iPhone应用程序,我想显示价格。所以我使用这些代码行:
NSNumberFormatter *price = [[NSNumberFormatter alloc] init];
[price setNumberStyle:NSNumberFormatterCurrencyStyle];
[price setCurrencyCode:@"USD"];
我想要的只是价格,格式为currencyCode
,但在我的情况下没有USD
。
因此,我希望只有30,00 $
而不是30,00
而不是$
。
我该怎么做?
最诚挚的问候,蒂姆。
答案 0 :(得分:20)
您希望摆脱的是货币符号。
[price setCurrencySymbol:@""];
答案 1 :(得分:3)
你可以将 setCurrencySymbol 用于一个空字符串,这应该可以解决这个问题:
[price setCurrencySymbol:@""];
请注意,这只会设置本地货币代码,而且可能无法使用外币。
答案 2 :(得分:1)
这是一种在保持符号的正确语言环境格式的同时执行此操作的方法:
_fmt.positiveFormat = [_fmt.positiveFormat
stringByReplacingOccurrencesOfString:@"¤" withString:@""];
_fmt.negativeFormat = [_fmt.negativeFormat
stringByReplacingOccurrencesOfString:@"¤" withString:@""];
¤字符用于货币符号的货币格式。如果您按照其他一些答案中的建议替换货币符号,格式化程序会为该号码执行美国标准格式(AFAIK - 在iOS 4和美国5中测试)。设置格式化程序的语言环境后,您需要执行此替换。尝试使用没有便士的货币代码HUF。