How to remove trailing zeros in floats without rounding in Objective-C?

Do I need to clear trailing zeros on floats without rounding? I need to show only the corresponding decimal places.

For example, if I have 0.5, I need it to show 0.5, not 0.500000. If I have 2.58328, I want to display 2.58328. If I have 3, I want to display 3, not 3.0000000. Basically, I need the number of decimal places to change.

+7
ios objective-c
source share
2 answers

NSNumberFormatter - path:

 NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init]; formatter.numberStyle = NSNumberFormatterDecimalStyle; formatter.maximumFractionDigits = 20; NSString *result = [formatter stringFromNumber:@1.20]; NSLog(@"%@", result); result = [formatter stringFromNumber:@0.00031]; NSLog(@"%@", result); 

This will print:

 1.2 0.00031 
+19
source share

Use the following:

 NSString* floatString = [NSString stringWithFormat:@"%g", myFloat]; 
+18
source share

All Articles