zoukankan      html  css  js  c++  java
  • [ios]字符串转化成NSDate类型 计算与当前时间的相差 月数 天数 【转】

    NSString *dateStr=[dic objectForKey:@"date"];// 2012-05-17 11:23:23

        NSCalendar *gregorian = [[NSCalendaralloc] initWithCalendarIdentifier:NSGregorianCalendar];  

         NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;  

        NSDateFormatter *format=[[NSDateFormatteralloc] init];

        [format setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

        NSDate *fromdate=[format dateFromString:dateStr];

        NSTimeZone *fromzone = [NSTimeZone systemTimeZone];

        NSInteger frominterval = [fromzone secondsFromGMTForDate: fromdate];

        NSDate *fromDate = [fromdate  dateByAddingTimeInterval: frominterval]; 

         NSLog(@"fromdate=%@",fromDate);

        [format release];

        NSDate *date = [NSDate date];

        NSTimeZone *zone = [NSTimeZonesystemTimeZone];

        NSInteger interval = [zone secondsFromGMTForDate: date];

        NSDate *localeDate = [date  dateByAddingTimeInterval: interval]; 

        NSLog(@"enddate=%@",localeDate);

        NSDateComponents *components = [gregorian components:unitFlags fromDate:fromDate toDate:localeDate options:0];  

        NSInteger months = [components month];  

        NSInteger days = [components day];//年[components year]

        NSLog(@"month=%d",months);

        NSLog(@"days=%d",days);

        [gregorian release];

        if (months==0&&days==0) {

            dateStr=[[dateStr substringFromIndex:11]substringToIndex:5];

            cell.textLabel.text=[NSString stringWithFormat:@"今天 %@",dateStr];//今天 11:23

        }else if(months==0&&days==1){

            dateStr=[[dateStr substringFromIndex:11]substringToIndex:5];

            cell.textLabel.text=[NSString stringWithFormat:@"昨天 %@",dateStr];//昨天 11:23

        }else{

            dateStr=[dateStr substringToIndex:10];

            cell.textLabel.text=dateStr;

        }


  • 相关阅读:
    对每项物品,找出最贵价格的物品的经销商
    每项物品的的最高价格是多少?
    找出最贵物品的编号、销售商和价格
    查数据库有哪些表、查数据库
    取某字段不为空的数据is not null
    mysql匹配模式
    找出包含正好5个字符的名字
    要想找出正好包含5个字符的名字
    要想找出包含“w”的名字
    要想找出以“y”结尾的名字
  • 原文地址:https://www.cnblogs.com/jinjiantong/p/3013710.html
Copyright © 2011-2022 走看看