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);