NSNumberFormatter setPerMillSymbol被忽略

时间:2013-08-20 09:45:49

标签: ios nsnumberformatter digits

以下代码无法按预期运行:

//[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
formatter.maximumFractionDigits = 2;
formatter.minimumFractionDigits = 2;
formatter.decimalSeparator = @",";
formatter.perMillSymbol = @".";
NSString *resultText = [formatter stringFromNumber:[NSNumber numberWithFloat:1234.10]];

结果字符串是1234,10,但perMillSymbol被忽略。当我取消注释setNumberStyle调用时,结果是1,234,10 - 忽略我的set perMillSymbol。

这里有什么问题?

1 个答案:

答案 0 :(得分:3)

如果您尝试将数字格式设置为1.234,10,请尝试以下操作:

NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
[formatter setFormatterBehavior:NSNumberFormatterBehavior10_4];
formatter.maximumFractionDigits = 2;
formatter.minimumFractionDigits = 2;
formatter.decimalSeparator = @",";
formatter.groupingSeparator = @".";
NSString *resultText = [formatter stringFromNumber:[NSNumber numberWithFloat:1234.10]];

每个轧机符号用于表示百分之十(0.001)并且与十进制格式的数字无关。