У меня есть значение с плавающей запятой, но когда мне нужно представить пользователю, мне нужно, чтобы оно показывало с точностью до одного знака после запятой, без округления.так что в основном мне нужно усечь до одного знака после запятой.например 95,56 -> 95,5
NSNumberFormatter сделает это за вас.
NSNumberFormatter
-setMaximumFractionDigits: -setRoundingMode:
-setMaximumFractionDigits:
-setRoundingMode:
Обновление
#import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { @autoreleasepool { NSNumberFormatter * nf = [[NSNumberFormatter new] autorelease]; [nf setMaximumFractionDigits:1]; [nf setRoundingMode:NSNumberFormatterRoundFloor]; NSLog(@"The number is '%@'", [nf stringFromNumber:[NSNumber numberWithDouble:95.56]]); } return 0; }
Выход:
2012-02-16 02: 39: 49.799 NumberFormatter [14592: 903] Это число '95 .5 '
попробуйте на этом примере
float t = 25.55; NSLog(@"%.1f", t);
показывает 25,5, если вы установите% .2f, если вы получите 25,55
Должно быть так
код sudo
преобразование числа в строку.
find "."в строке.
сделать подстроку от начала до "."позиция +1