NSDate生成:spa
NSDate *date = [NSDate date]; orm
NSDate *date = [[NSDate alloc] initWithString:@"2010-01-01 23:59:59 +0900"];ip
返回日期時間: input
NSString *str = [date description]; string
比較,取得更早或更晚的日期: it
NSDate *d = [date1 earlierDate: date2]; io
NSDate *d = [date1 laterDate: date2] date
是否相同日期: im
BOOL b = [date1 isEqualToDate: date2]; margin
取得從如今開始過某秒以後的日期時間:
NSDate *d = [NSDate dateWithTimeIntervalSinceNow: 86400*7];
*負數是指過去時間
本身設定的形式來取得日期:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
df.dateFormat = @"yyyy/MM/dd HH:mm:ss";
或 [df setDateFormat:@"yyyy/MM/dd HH:mm:ss"];
取得如今日期時間:(鏈接上面設定形式)
NSString *str = [df stringFromDate:[NSDate date]];
設定日期: (鏈接上面設定形式)
NSDate *aDate = [df dateFromString: @"2000/03/01 00:00:00"];
從某時間開始通過某秒後的日期時間:
bDate = [aDate initWithTimeInterval:3*60 sinceDate:aDate]; //從aDate過3分鐘
指定某月的末日: (使用前一個月的第一天來取得)
NSDate *aDate = [inputDateFormatter dateFromString:@"2000/03/01 00:00:00"]; //給定3月1日零點日期
NSDate *bDate = [orgDate initWithTimeInterval:-1*24*60*60 sinceDate:a];// 1日前
NSLog(@"2000年2月的末日 -> %@", bDate);
取得某兩個時間相隔多久:
since = [dateA timeIntervalSinceDate: dateB];
只取得日期不要時間:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setTimeStyle: NSDateFormatterNoStyle];
[df setDateStyle: NSDateFormatterMediumStyle];
NSString *nowDateStr = [df stringFromDate:[NSDate date]];
NSDate *nowDate = [df dateFromString:nowDateStr];
NSLog(@"%@", nowDate);