我需要从UITextfield获取一个字符串,并将其格式化如下:
4.99999 -> 4.999
4.12 -> 4.12
.89 -> 0.89
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[numberFormatter setMaximumFractionDigits:3];
[numberFormatter setPositiveFormat:@"##0.###"];
DLog(@"formatted number %@",[numberFormatter numberFromString:string]);问题是,当我在textfield中键入0.999978并且格式化的数字是0.999978 (这是不正确的)时,它应该是0.999
发布于 2015-06-29 01:09:56
试试看:
NSNumber *aNum = [NSNumber numberWithDouble:[string doubleValue]];
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
[numberFormatter setPositiveFormat:@"##0.###"];
[numberFormatter setRoundingMode:NSNumberFormatterRoundFloor];
DLog(@"formatted string %@",[numberFormatter stringFromNumber:aNum]);https://stackoverflow.com/questions/31106312
复制相似问题