NSDate

       NSDate *date =[NSDate date];//当前时间

        NSLog(@"%@",date);

        

        NSDate *date1 = [NSDate dateWithTimeIntervalSinceNow:3600.0*10];//从当前时间开始,若干秒后的时间,参数代表秒

        NSDate *date2 = [NSDate dateWithTimeIntervalSince1970:1000];//从1970年开始,经过了若干秒的时间

        

        NSDate *date3 = [date2 dateByAddingTimeInterval:60];//以某个时间为标准,加上若干秒后的时间

        

       // NSLog(@"%@",date3);

        

        NSTimeInterval interval = [date timeIntervalSince1970];//从1970年到某一时间的秒数

        

        NSTimeInterval interval1 = [date1 timeIntervalSinceDate:date];//计算两个时间的间隔(秒

        

        NSTimeInterval interval2 = [date1 timeIntervalSinceNow];//获取某一时间与当前时间的间隔

        

        NSLog(@"%lf",interval1);

        

        NSDate *date4 = [date laterDate:date1];//获取两个时间较晚的(距离1970年时间较长的)

        

        NSLog(@"%@",date4);

        

        NSDateFormatter *formater = [[NSDateFormatter alloc] init];

        [formater setDateFormat:@"yyyy-MM-dd h:mm:ss "];//设置时间显示的格式

        

        NSTimeZone *zone = [NSTimeZone systemTimeZone];//获取系统时区

        [formater setTimeZone:zone];//设置时区

        

        NSString *dateStr = [formater stringFromDate:date1];//将日期转换成字符串

        NSLog(@"%@",dateStr);

        

        

        NSDateFormatter *formatter1 = [[NSDateFormatter alloc] init];

        [formatter1 setDateFormat:@"yyyy年MM月dd日 hh:mm:ss"];

        [formatter1 setTimeZone:[NSTimeZone localTimeZone]];

        

        NSString *str = @"2015年11月11日 11:11:11";

        

        //此处使用的formater格式要与字符串格式完全一致,否则转换失败

        NSInteger timeOff = [zone secondsFromGMT];//获取系统时区的格林时差

        NSLog(@"%f",timeOff/3600.0);

        NSDate *date5 = [formatter1 dateFromString:str];

        NSLog(@"%@",date5);

        

原文地址:https://www.cnblogs.com/zhangyu666666/p/4932542.html