NSDate的使用
NSDate?
?
//得到当前的日期?
NSDate *date = [NSDate date];?
NSLog(@"date:%@",date);?
?
//得到(24 * 60 * 60)即24小时之前的日期,dateWithTimeIntervalSinceNow:?
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow: -(24 * 60 * 60)];?
NSLog(@"yesterday:%@",yesterday);?
?
NSDateFormatter *formatter =[[[NSDateFormatter alloc] init] autorelease];?
NSDate *date = [NSDate date];?
[formatter setTimeStyle:NSDateFormatterMediumStyle];?
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];?
NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease];?
NSInteger unitFlags = NSYearCalendarUnit |?
NSMonthCalendarUnit |?
NSDayCalendarUnit |?
NSWeekdayCalendarUnit |?
NSHourCalendarUnit |?
NSMinuteCalendarUnit |?
NSSecondCalendarUnit;?
//int week=0;?
comps = [calendar components:unitFlags fromDate:date];?
int week = [comps weekday];?
int year=[comps year];?
int month = [comps month];?
int day = [comps day];?
//[formatter setDateStyle:NSDateFormatterMediumStyle];?
//This sets the label with the updated time.?
int hour = [comps hour];?
int min = [comps minute];?
int sec = [comps second];?
NSLog(@"week%d",week);?
NSLog(@"year%d",year);?
NSLog(@"month%d",month);?
NSLog(@"day%d",day);?
NSLog(@"hour%d",hour);?
NSLog(@"min%d",min);?
NSLog(@"sec%d",sec);?
?
//得到毫秒?
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];?
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];?
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];?
//[dateFormatter setDateFormat:@"hh:mm:ss"]?
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];?
NSLog(@"Date%@", [dateFormatter stringFromDate:[NSDate date]]);?
[dateFormatter release];?
?
==========================================?
方法一?
?
NSDate* toDate1 = [ [ NSDate alloc] initWithString:@"2520-9-26 17:10:00 +0600" ];?
NSTimeInterval distance = [ toDate1 timeIntervalSinceNow ];?
NSTimeInterval iDat = distance / ( 86400 ) ;?
NSLog( @" From now to %@ diff: %f ", [toDate1 description ], iDat );?
[ toDate1 release ];?
?
方法二?
NSDate* toDate?? = [ [ NSDate alloc] initWithString:@"2009-9-29 0:0:00 +0600" ];?
NSDate* startDate?? = [ [ NSDate alloc] init ];?
NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];?
?
NSUInteger unitFlags =? NSHourCalendarUnit | NSMinuteCalendarUnit |?
NSSecondCalendarUnit | NSDayCalendarUnit?
| NSMonthCalendarUnit | NSYearCalendarUnit;?
?
NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:startDate toDate:toDate options:0];?
NSInteger diffHour = [ cps hour ];?
NSInteger diffMin = [ cps minute ];?
NSInteger diffSec = [ cps second ];?
NSInteger diffDay = [ cps day ];?
NSInteger diffMon = [ cps month ];?
NSInteger diffYear = [ cps year ];?
NSLog( @" From Now to %@, diff: Years: %d Months: %d, Days; %d, Hours: %d, Mins:%d, sec:%d",?
[toDate description], diffYear, diffMon, diffDay, diffHour, diffMin,diffSec );?
[ toDate release ];?
[ startDate release ];?
[ chineseClendar release ];?
NSDate
//得到当前的日期 www.2cto.com
NSDate *date = [NSDate date];
NSLog(@"date:%@",date);
//得到(24 * 60 * 60)即24小时之前的日期,dateWithTimeIntervalSinceNow:
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow: -(24 * 60 * 60)];
NSLog(@"yesterday:%@",yesterday);
NSDateFormatter *formatter =[[[NSDateFormatter alloc] init] autorelease];
NSDate *date = [NSDate date];
[formatter setTimeStyle:NSDateFormatterMediumStyle];
NSCalendar *calendar = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease];
NSInteger unitFlags = NSYearCalendarUnit |
NSMonthCalendarUnit |
NSDayCalendarUnit |
NSWeekdayCalendarUnit |
NSHourCalendarUnit |
NSMinuteCalendarUnit |
NSSecondCalendarUnit;
//int week=0;
comps = [calendar components:unitFlags fromDate:date];
int week = [comps weekday];
int year=[comps year];
int month = [comps month];
int day = [comps day];
//[formatter setDateStyle:NSDateFormatterMediumStyle];
//This sets the label with the updated time.
int hour = [comps hour];
int min = [comps minute];
int sec = [comps second];
NSLog(@"week%d",week);
NSLog(@"year%d",year);
NSLog(@"month%d",month);
NSLog(@"day%d",day);
NSLog(@"hour%d",hour);
NSLog(@"min%d",min);
NSLog(@"sec%d",sec);
//得到毫秒
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
//[dateFormatter setDateFormat:@"hh:mm:ss"]
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSLog(@"Date%@", [dateFormatter stringFromDate:[NSDate date]]);
[dateFormatter release];
==========================================
方法一
NSDate* toDate1 = [ [ NSDate alloc] initWithString:@"2520-9-26 17:10:00 +0600" ];
NSTimeInterval distance = [ toDate1 timeIntervalSinceNow ];
NSTimeInterval iDat = distance / ( 86400 ) ;
NSLog( @" From now to %@ diff: %f ", [toDate1 description ], iDat );
[ toDate1 release ];
方法二
NSDate* toDate? = [ [ NSDate alloc] initWithString:@"2009-9-29 0:0:00 +0600" ];
NSDate* startDate?= [ [ NSDate alloc] init ];
NSCalendar* chineseClendar = [ [ NSCalendar alloc ] initWithCalendarIdentifier:NSGregorianCalendar ];
NSUInteger unitFlags =?NSHourCalendarUnit | NSMinuteCalendarUnit |
NSSecondCalendarUnit | NSDayCalendarUnit
| NSMonthCalendarUnit | NSYearCalendarUnit;
NSDateComponents *cps = [ chineseClendar components:unitFlags fromDate:startDate toDate:toDate options:0];
NSInteger diffHour = [ cps hour ];
NSInteger diffMin = [ cps minute ];
NSInteger diffSec = [ cps second ];
NSInteger diffDay = [ cps day ];
NSInteger diffMon = [ cps month ];
NSInteger diffYear = [ cps year ];
NSLog( @" From Now to %@, diff: Years: %d Months: %d, Days; %d, Hours: %d, Mins:%d, sec:%d",
[toDate description], diffYear, diffMon, diffDay, diffHour, diffMin,diffSec );
[ toDate release ];
[ startDate release ];
[ chineseClendar release ];