Nig*_*ury 10 trim decimal nsnumberformatter ios
我试图有一个最大2位小数精度的数字字符串,而其余的小数只是修剪掉而不是将它们四舍五入.例如:
I have: 123456.9964
I want: 123456.99 -> Just want to trim rest of the decimal places
我试过的是:
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle: NSNumberFormatterDecimalStyle];
[numberFormatter setMaximumFractionDigits:2];
NSString *numberAsString = [numberFormatter stringFromNumber:[NSNumber numberWithFloat: 123456.9964]];
NSLog(@"%@", numberAsString);
Run Code Online (Sandbox Code Playgroud)
没有什么可以将舍入模式设置为"无".我还能做些什么来维护十进制样式格式以及修剪过的十进制数字?任何帮助将不胜感激.谢谢.
rma*_*ddy 17
以下适用于我:
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[numberFormatter setMaximumFractionDigits:2];
// optional - [numberFormatter setMinimumFractionDigits:2];
[numberFormatter setRoundingMode:NSNumberFormatterRoundDown];
NSNumber *num = @(123456.9964);
NSString *numberAsString = [numberFormatter stringFromNumber:num];
NSLog(@"%@", numberAsString);
Run Code Online (Sandbox Code Playgroud)
输出为:123,456.99
你的部分问题是使用numberWithFloat:而不是numberWithDouble:.你的电话号码太多了float.
| 归档时间: |
|
| 查看次数: |
6921 次 |
| 最近记录: |