//获取当前时间
NSDate * nowDate = [NSDate date];
NSLog(@"date=%@",nowDate);
//获取距离当前时间n秒以后的时间
NSDate *d2 = [NSDate dateWithTimeIntervalSinceNow:3600];
NSLog(@"%@",d2);
//获取距离指定日期,n秒后(之前)的日期
NSDate *d3 = [NSDate dateWithTimeInterval:3600*2 sinceDate:[NSDate date]];
NSLog(@"%@",d3);
//获取距离2001-01-01,n秒后(之前)的日期
NSDate *d4 = [NSDate dateWithTimeIntervalSinceReferenceDate:3600];
NSLog(@"%@",d4);
//获取距离1970-01-01,n秒后(之前)的日期
NSDate *d5 = [NSDate dateWithTimeIntervalSince1970:3600];
NSLog(@"%@",d5);
//获取两个Date对象之间的时间间隔
NSTimeInterval t1 = [d3 timeIntervalSinceNow];
NSLog(@"%f",t1);
//跟2001-01-01比较
NSTimeInterval t2 = [nowDate timeIntervalSinceReferenceDate];
NSLog(@"%f",t2);
//跟1970-01-01比较
NSTimeInterval t3 = [nowDate timeIntervalSince1970];
NSLog(@"%f",t3);
//计算当前时间和一个固定时间的差值,如果差值在60秒内,输出“刚刚”,如果在60秒外3600秒内,输出“xx分钟前”,如果3600秒外,3600*24秒内,输出“xx小时前”(随机获得0-255的数)
//随机创建一个date对象
NSDate *randomDate = [NSDate dateWithTimeIntervalSinceNow:arc4random()%(3600*24)];
//获取randomDate和当前时间的时间差
NSTimeInterval time = [randomDate timeIntervalSinceNow];
NSLog(@"%f",time);
if(time <60){
NSLog(@"刚刚");
}else if (time<3600){
int minute = time/60;
NSLog(@"%d分钟前",minute);
}else if (time<3600*24){
int hour = time/3600;
NSLog(@"%d小时前",hour);
}
#pragma mark --nsdateformatter 日期格式化
//功能: 将NSdate转变为表示时间的NSString
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:3600*2];
//设置格式,表示方式:年yyyy 月:MM 日:dd 小时:hh 分钟:mm秒:ss
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss MMM eee a"];
//上午
[formatter setAMSymbol:@"AM"];
//下午
[formatter setPMSymbol:@"PM"];
NSString * strdate = [formatter stringFromDate:date];
NSLog(@"date=%@",strdate);
//第二个功能 :将表示时间的NSString转换问哦对应的NSdate对象
NSDateFormatter * formatter1 = [[NSDateFormatter alloc]init];
//设置格式
NSString *str = @"2013-12-10 10:30:00";
[formatter1 setDateFormat:@"yyyy-MM-dd hh:mm:ss"];
NSDate * date2 = [formatter1 dateFromString:str];
NSLog(@"%@",date2);
//2014年05月01日 10点23分18秒
NSDateFormatter * formatter2 = [[NSDateFormatter alloc]init];
NSString * nstr =@"2014年05月01日 10点23分18秒";
//设置格式
[formatter2 setDateFormat:@"yyyy年MM月dd日 hh点mm分ss秒"];
NSDate * date3 = [formatter2 dateFromString:nstr];
NSLog(@"%@",date3);