擷取當前日期:NSDate * date = [NSDate date];//不過這個方式,擷取的是UTC事件。
NSDate * date = [NSCalendarDate date];//擷取本地時間。
擷取昨天的日期:
NSDate * yesterday = [[NSCalendarDate date] dateByAddingInternalInterval:-24*60*60];
擷取指定時間:
NSDate * nationalDate = [NSDate dateWithString:"2012-10-01 00:00:00 +0800"];
還有一個使用指定格式的時間字串建立時間對象:
NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
[dateFormatter setTimeZone:@"H"];//H表示+0800.相應的I表示+0900.Z表示-0100.
NSDate * nationalDate2 = [formatter dateFromString:@"2012-10-01 00:00:00"];
使用字串建立時間的第三種方法是:
NSDate * date = [NSCalendarDate dateWithString:@"4 Mar 2012" calendarFormat:@"%d %b %Y"];//這種方法,需要記住比較特殊的日期格式化字元
將日期格式化成制定的字串:
NSDateFormatter formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd"];
[formatter setTimeZone:@"H"];
NSString * dateString = [formatter stringFromDate:date];//將會輸出2012-03-04.
NSDate * earlierDate = [yesterday earlierDate:today];//擷取兩個日期中比較早的日期.返回yesterday
NSDate * laterDate = [tomorrow laterDate:today];//擷取兩個日期中比較晚的日期. 返回tomorrow
NSCalendarDate * cDate = [today dateWithCalendarFormat:@"%d %b %Y" timeZone:[NSTimeZone localTimeZone]];//根據format字串,將當前日期轉換成指定時區的calendarDate
timeInternvalSinceDate//這個方法用於實現兩個日期相減。