如何确定区域设置货币是否具有小数点

时间:2015-12-08 00:49:03

标签: ios objective-c currency

在objective-c中是否还有确定货币是否使用小数点(无论声明的NSNumber类型如何)?

我有多个语言环境,并且我使用NSNumberFormatter(基于语言环境)来设置字符串货币字符串样式,但是事先我想知道所选语言环境货币是否使用小数点。

[_cf setLocale:
[NSLocale localeWithLocaleIndentifier:[NSString stringWithFormat:@"%@",locale]]]];
[cf setNumberStyle:NSNUmberFormatterCurrencyStyle];
NSString *value = [cf stringFromNumber:price];
return value;

1 个答案:

答案 0 :(得分:3)

创建具有货币样式的NSNumberFormatter后,请询问格式化程序它有多少小数位数。

NSInteger maxFractionDigits = cf.maximumFractionDigits;
if (maxFractionDigits == 0) {
    // this currency is an integer, not a decimal
}

这是真实的一个例子是日元(¥)。