我有一個浮點值iPhone NSNumberFormatter小於1倍的值
i.e. 0.0467
想有一個字符串 05
怎樣才能得到呢?排除小數點(。)。
更確切地說,如果我有一個浮點數,我想把它分成整數和小數,最好分成兩個字符串部分。
我有一個浮點值iPhone NSNumberFormatter小於1倍的值
i.e. 0.0467
想有一個字符串 05
怎樣才能得到呢?排除小數點(。)。
更確切地說,如果我有一個浮點數,我想把它分成整數和小數,最好分成兩個字符串部分。
fDecimal = 0.04567;
NSString * strDecimal = [NSString stringWithFormat:@"%0.2f", fDecimal];
NSString * strDecimalPart = [strDecimal substringWithRange:NSMakeRange(2, 2)];
你正在尋找被稱爲小數位數設置:
NSNumberFormatter* f = [[[NSNumberFormatter alloc] init] autorelease;
[f setMaximumFractionDigits:2];
可選擇使用-[NSNumberFormatter setRoundingMode:]
指定四捨五入應該怎麼做。
通過以下操作,您將獲得所需的結果。
float floatValue = 0.0467;
NSString *str = [NSString stringWithFormat:@"%.2f", floatValue];
str = [str stringByReplacingCharactersInRange:NSMakeRange(0, 2) withString:@""];
NSLog(@"%@", str); // Result will be: 05
謝謝。那就是我現在正在做的事情。該方法的一個變種,[strTotalDecimal substringWithRange:NSMakeRange(2,2);不包括前導零(0)和小數分隔符(./,),不管它是什麼! – karim
你想圓了浮點值? – Akshay