【语法】NSDate

NSDate

======================== ios 如何获得系统时间和日期===================

1. 获得系统时间

1       NSDate *senddate=[NSDate date];
2         NSDateFormatter *dateformatter=[[[NSDateFormatter alloc] init] autorelease];
3         [dateformatter setDateFormat:@"YYYY-MM-dd-HH-mm-ss-a"];
4         NSString *locationString =[dateformatter stringFromDate: senddate];
5         NSLog(@"当前时间=%@",locationString);

 

2.获得当前时间【好像是以0时区为标准】

     NSDate *myDate = [NSDate date];
        NSLog(@"myDate = %@",myDate);

 

3.获得系统日期

      NSCalendar *cal = [NSCalendar currentCalendar];
        NSUInteger unitFlags = NSDayCalendarUnit|NSMonthCalendarUnit|NSYearCalendarUnit;
        NSDateComponents * conponent = [cal components:unitFlags fromDate:senddate];
        NSInteger year = [conponent year];
        NSInteger month = [conponent month];
        NSInteger day = [conponent day];
        NSString *dateString = [NSString stringWithFormat:@"%4d年%2d月%2d日",(int)year,(int)month,(int)day];
        NSLog(@"当前日期 = %@",dateString);

 

4.从字符串来获得NSDate

 1        NSString *strYear = @"1988";
 2         NSString *strMonth = @"09";
 3         NSString *strDay = @"18";
 4         NSString *strHour = @"5";
 5         NSString *strMinutes = @"18";
 6         NSString *strSec = @"20";
 7         
 8         NSString *morelocationString = [NSString stringWithFormat:@"%@-%@-%@ %@:%@:%@"
 9                                         ,strYear,strMonth,strDay,strHour,strMinutes,strSec];
10         
11         //根据时间字符串获得NSDate
12         NSDateFormatter *formatter = [[[NSDateFormatter alloc] init] autorelease];
13         [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"]; // 这个格式必须跟33行一致
14         NSDate *oldDate = [formatter dateFromString:morelocationString];
15         NSLog(@"oldDate = %@",[dateformatter stringFromDate:oldDate]);

 

5. 第二天的当前时间

1         NSTimeInterval secondsPerDay = 24*60*60;
2         NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:secondsPerDay];
3         NSLog(@"myDate = %@",tomorrow);

 

6.前一天的当前时间

     NSTimeInterval secondsPerDay1 = 24*60*60;
        NSDate *now = [NSDate date];
        NSDate *yesterDay = [now addTimeInterval:-secondsPerDay1];
        NSLog(@"yesterDay = %@",yesterDay);

 

posted @ 2014-04-07 17:00  太过于漂流  阅读(189)  评论(0编辑  收藏  举报