Reputation: 562
I have a double number for e.g "12.1278", I want to convert this number up to 2 decimals only, like "12.12".
But, when I use following code:
double d = 12.1278;
NSLog(@"Float upto 2 decimals : %.2f", d);
The output is:
Float upto 2 decimals : 12.13
I want the conversion like:
Float upto 2 decimals : 12.12
Upvotes: 2
Views: 961
Reputation: 112857
Use NSNumberFormatter
with roundingMode
of NSNumberFormatterRoundFloor
.
double d = 12.1278;
NSNumberFormatter *formatter = [NSNumberFormatter new];
[formatter setRoundingMode:NSNumberFormatterRoundFloor];
[formatter setMaximumFractionDigits:2];
NSString *numberString = [formatter stringFromNumber:@(d)];
NSLog(@"numberString: %@", numberString);
NSLog output:
numberString: 12.12
Upvotes: 5