需求:顯示需要保留小數(shù)點前兩位牙躺,小數(shù)點后兩位掂恕。
/**
* 截取
*
* @param text 文本
* @param preInt 保留小數(shù)點前幾位
* @param decInt 保留小數(shù)點后幾位
*/
- (NSString*)subStringWithString:(NSString*)text subPre:(NSInteger)preInt subDec:(NSInteger)decInt{
NSString *result = @"";
if (!text || [text isEqualToString:@""]) {
return result;
}
NSArray *array = [text componentsSeparatedByString:@"."];
if (!array || array.count<=0) {
return result;
}
//有小數(shù)(包含.12垮卓、0.12、12.、12.0的情況)
if (array.count==2) {
NSString *intValue = @"";
NSString *floatValue = @"";
NSString *intText = [array objectAtIndex:0];
NSString *floatText = [array objectAtIndex:1];
intValue = intText.length>=preInt ? [intText substringWithRange:NSMakeRange((intText.length - preInt), preInt)]:intText;
floatValue = floatText.length>=decInt ? [floatText substringWithRange:NSMakeRange(0, decInt)]:floatText;
intValue = [intValue isEqualToString:@""]? @"0":intValue;
floatValue = [floatValue isEqualToString:@""]? @"0":floatValue;
if ([intValue isEqualToString:@"0"] && [floatValue isEqualToString:@"0"]) {
result = @"";
}else{
result = [NSString stringWithFormat:@"%@.%@",intValue,floatValue];
}
}
//沒有小數(shù)
if (array.count==1) {
NSString *intText = [array objectAtIndex:0];
result = intText.length>=preInt ? [intText substringWithRange:NSMakeRange((intText.length - preInt), preInt)]:text;
}
return result;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者