码迷,mamicode.com
首页 > 其他好文 > 详细

将价钱(float)转换成带分隔符的价钱(字符串)

时间:2014-12-22 14:37:11      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:float   string   price   .   

2988.32 ——> 2,988.32

2988.00 ——> 2,988

+ (NSString *)priceStrWithPrice:(float)price
{
    NSString *priceStr = [NSString stringWithFormat:@"%.2f", price];
    NSString *intStr = [[priceStr componentsSeparatedByString:@"."] firstObject];
    NSString *dotStr = [[priceStr componentsSeparatedByString:@"."] lastObject];
    
    NSMutableArray *array = [NSMutableArray array];
    while ([intStr length] > 3) {
        NSString *right = [intStr substringFromIndex:[intStr length] - 3];
        NSString *left= [intStr substringToIndex:[intStr length] - 3];
        [array insertObject:right atIndex:0];
        intStr = left;
    }
    [array insertObject:intStr atIndex:0];
    
    NSString *result = [array componentsJoinedByString:@","];
    if ([dotStr intValue] > 0) {
        result = [NSString stringWithFormat:@"%@.%@", result, dotStr];
    }
    return result;
}


将价钱(float)转换成带分隔符的价钱(字符串)

标签:float   string   price   .   

原文地址:http://8386217.blog.51cto.com/8376217/1592512

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!