NSDate

     

        //NSDate类

        //系统默认时区是零时区,本初子午线那边的

        //北京时间在东八区,东加西减

      

        NSDate *date = [NSDate date];

        NSLog(@"%@" , date);

 

 

        NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:8 * 60 * 60];

        NSLog(@"%@" , date2);

        

        NSDate *date3 = [NSDate dateWithTimeIntervalSince1970:0];

        NSLog(@"%@" , date3);

        NSDate *date4 = [NSDate dateWithTimeIntervalSinceReferenceDate:0];

        NSLog(@"%@" , date4);

        

        

        //表示明天时间

        NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:24 * 3600];

        NSLog(@"%@" , tomorrow);

        //表示昨天时间

        NSDate *yesterday = [ NSDate dateWithTimeIntervalSinceNow:-24 * 3600];

        NSLog(@"%@" , yesterday);

        

        //计算两个时间差距(代码里面的时间是以秒为单位来计算的)

        //是有先后顺序的,所以就会有正负之分

        NSTimeInterval timeinterval1 = [tomorrow timeIntervalSinceDate:yesterday];

        NSLog(@"%.2f" , timeinterval1 / 3600);

        

        //计算两个时间对象中比较早多时间是哪一个

        NSDate *earlierDate = [tomorrow earlierDate:yesterday];

        NSLog(@"%@" , earlierDate);

        //计算两个时间对象中比较晚多时间是哪一个

        NSDate *laterDate = [tomorrow laterDate:yesterday];

        NSLog(@"%@" , laterDate);

        

        // 判断两个时间是否相等

        BOOL isEqual = [tomorrow isEqualToDate:yesterday];

        NSLog(@"%d" , isEqual);

        

        // 从控制台输入一个时间间隔,根据这个时间间隔来判断,如果在60秒内,打印“刚刚” , 如果在60秒之外,3600秒之内,打印“XX分钟之前”,如果在3600秒之外,24*3600秒之内,打印“Xx小时之前”,在如果。。。

       

        double a = 0;

        scanf("%lf" , &a);

 

        if (a < 60) {

            NSLog(@"刚刚");

            

        } else if(a < 3600){

            NSLog(@"%d分钟之前" , (int)a / 60);

            

        } else if (a < 24 * 3600){

            NSLog(@"%d小时之前" ,(int)a / 3600);

        }

        

        

        //时间格式转换

        NSDate *nowDate = [NSDate date];

        NSLog(@"%@" , nowDate);

        //转换时间格式工具

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

        // 给工具设置时间格式(formatter自动获取当前系统时间)

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

        NSString *str = [formatter stringFromDate:nowDate];

        NSLog(@"%@" , str);

        

        //当前时间

        NSDate *nDate = [NSDate date];

        //定义转换格式工具

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

        //给工具设置格式

        [forr setDateStyle:NSDateFormatterFullStyle];

        NSString *str1 = [forr stringFromDate:nDate];

        NSLog(@"%@" ,str1);

        

        //从一个字符串中把时间拿到NSDate对象中

        NSString *dateStr = @"2015,5,6 11:54:55";

        NSDate *date6 = [NSDate date];

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

        [formatter setDateFormat:@"yyyy,MM,dd HH:mm:ss"];

        

        date6 = [formatter dateFromString:dateStr];

    

        NSLog(@"%@" , date6);

        

        /*

         a(上午 下午都可以)

         hh代表12小时制的时间

         HH代表24小时制的时间

         mm代表分钟

         ss代表秒

         yyyy代表年(2015---yy --(15))

         **********5月********************

         M :5 代表月(数字的格式)

         MM:05 代表月(数字的格式 位数不够补0)

         MMM:5月

         MMMM:五月

         *********************************

         d代表天数,从月里面算的

         D 代表天数,从年里面算的

         

         *********************************

         E  周几(E 、EE、EEE、周三;EEEE星期三;EEEEE三;>6E周三;e自己测试饿)

        */

    

    

 

posted @ 2015-05-09 11:11  fengkuangIT  阅读(315)  评论(0编辑  收藏  举报