我需要创建一个采用整数值的NSFormatter,然后将它们发送到格式化的货币,但问题是必须添加K和M才能成千上万。 E.G:
130000 -> $130k
12000 -> $12k
10000000 ->$10M
它必须是数据类型NSNumberFormatter,因为我将使用它来设置一个带参数NSNumberFormatter的属性(我正在格式化图形的轴标签)。
答案 0 :(得分:0)
NSByteCountFormatter
可以提供帮助:
int number = 100000;
NSString *binaryFormatted = [NSByteCountFormatter stringFromByteCount:number countStyle:NSByteCountFormatterCountStyleDecimal];
NSLog(@"binaryFormatted: %@", binaryFormatted);
NSString *digits = [binaryFormatted substringToIndex:binaryFormatted.length-3];
NSString *units = [binaryFormatted substringWithRange:NSMakeRange(binaryFormatted.length-2, 1)];
NSString *currencyFormatted = [NSString stringWithFormat:@"$%@%@", digits, units];
NSLog(@"currencyFormatted: %@", currencyFormatted);
NSLog输出
binaryFormatted:100 KB
currencyFormatted:$ 100K