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 //根据时间字符串获得NSDate12 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);