I'm trying to use NSNumberFormatter
to round a number to 5 decimal places in an iPhone app, but [formatter stringFromNumber:]
always returns strings rounded to 0.001 (3 decimal places). What am I doing wrong?
formatter = [[NSNumberFormatter alloc] init];
[formatter setNumberStyle:NSNumberFormatterDecimalStyle];
[formatter setRoundingMode:NSNumberFormatterRoundHalfUp];
[formatter setSecondaryGroupingSize:3];
[formatter setRoundingIncrement:[NSNumber numberWithDouble:0.00001]];
Try -setMaximumFractionDigits: and -setMinimumFractionDigits:
These configure the number of digits after the decimal separator.
Try [formatter setFormat:@"0.00000"]; instead of setRoundingIncrement:.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With