1.创建日期对象
创建的NSDate对象获得的是0时区的时间,我们是东八区,在加8个小时
NSDate *date1 = [NSDate date];(创建对象并且把当前时间赋给创建的对象,象的返回创建的对象,然后把创建的对象的地址赋给date1)
NSLog(@"%@",date1);(打印当前时间)
2.创建明天此时的日期
时间间隔是以秒为单位
NSDate *tomorrowDate = [NSDate dateWithTimeIntervalSinceNow:24 * 60 * 60];(返回的时间减去现在的时间=24 * 60 * 60)
NSLog(@"%@",tomorrowDate);
3.创建昨天此时的日期,前一天
NSDate *yesterdayDate = [NSDate dateWithTimeIntervalSinceNow:-24 * 60 * 60];(返回的时间减去现在的时间=24 * 60 * 60)
NSLog(@"%@",yesterdayDate);
4.获取两个日期的时间间隔
(tomorrowDate,yesterdayDate)
NSTimeInterval timeInterval = [yesterdayDate timeIntervalSinceDate:tomorrowDate];(NSTimeInterval也是个类)
NSLog(@"%g",timeInterval / 60 / 60 / 24);(前面的时间减去后面的时间是间隔时间)
NSTimeInterval timeInterval1 =[tomorrowDate timeIntervalSinceDate:yesterdayDate];
NSLog(@"%g",timeInterval1 / 60 / 60 / 24);
5.比较日期的早晚
获取两个日期中较早的日期
NSDate *earlierDate = [tomorrowDate earlierDate:yesterdayDate];
NSLog(@"%@",earlierDate);(昨天的日期)
6.获取两个日期中较晚的日期
NSDate *laterDate = [tomorrowDate laterDate:yesterdayDate];
NSLog(@"%@",laterDate);(明天的日期)
7.两个日期比较
NSComparisonResult result = [tomorrowDate compare:yesterdayDate];降序为1(前面与后面相减)
NSLog(@"%ld",result);
NSDate *currentDate = [NSDate date];
NSDate *dates = [NSDate dateWithTimeInterval:60 sinceDate:currentDate];
dates = 60 + currentDate
NSTimeInterval timeInterval2 = [dates timeIntervalSinceDate:currentDate];前面减后面的
if (timeInterval2 < 60) {
NSLog(@"刚刚");
}else if (timeInterval2 < 3600)
{NSLog(@"%d分钟前",(int)(timeInterval2 / 60));}
else if (timeInterval2 < 24 * 3600)
{
NSLog(@"%d小时前",(int)(timeInterval2 / 60 /60));
}
NSDateFormatter是一个日期格式类,将 日期以一定的格式进行转换,(原理,转换成字符串,),另外也可将日期格式转换为NSDate对象
NSDate *date = [NSDate date];
创建日期格式类对象
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
指定日期格式
HH表示24小时制,hh表示12小时制
MM表示月份,mm表示分钟
dd表示当月天数,DD表示当天处于本年的第几天
ss表示秒数
如果年份给两个y,则显示年份的后两位,给其他个数的y都是显示完整的年份
例如:MM,如果给两位,如果月份是一位,前面补零,如果一个M,则
[formatter setDateFormat:@"YYYY-MM-dd HH:mm:SS"];
设置日期的格式
[formatter setDateStyle:NSDateFormatterFullStyle];
设置时间的格式
[formatter setTimeStyle:NSDateFormatterFullStyle];
将日期按照指定的格式转换为日期格式串
NSString *datestr = [formatter stringFromDate:date];
NSLog(@"%@",datestr);
NSLog(@"%@",date);
设置日期的格式
将日期格式串转换为NSDate对象
@"2008-08-08 20:08:08"
NSString *dateStr = @"2008-08-08 20:08:08";
创建日期格式化对象
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
设置日期格式(一定要和日期格式串中日期的格式保持一致)
[formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];
NSDate *date1 = [formatter dateFromString:dateStr];
NSLog(@"%@",date1);
@"2014-05-01 10:23:18"