對于理財,借款類APP來說,沒有比千分位格式化來顯示某些數(shù)據(jù)更有說明力了,最近剛好用到這個東西,就說一下吧。
-
(NSString *)thousandSeparatWith:(NSString *)string{
if (string.length<=0 || [string isEqualToString:@"(null)"]) {//判斷值是否存在
return @"0.00";
}else if (string.floatValue < 1000) {//如果小于1000則不需要添加千分符
return string;
}else{
NSString *integerString = @"";
NSString *decimalString = @"00";
if ([string rangeOfString:@"."].location != NSNotFound) {
//帶小數(shù)的情況下需要根據(jù)小數(shù)點切分,然后再添加千分符
integerString = [[string componentsSeparatedByString:@"."] firstObject];
decimalString = [[string componentsSeparatedByString:@"."] lastObject];
}else{
integerString = [[string componentsSeparatedByString:@"."] firstObject];
}
NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
[numberFormatter setPositiveFormat:@",###"];
NSString * lastString = [NSString stringWithFormat:@"%@.%@",[numberFormatter stringFromNumber:[NSNumber numberWithDouble:integerString.doubleValue]],decimalString];return lastString;}
return @"";
}