iOS中的NSDate

获取当前的时间

    NSDate *date = [NSDate date];
    NSLog(@"%@",date);//Thu Sep 13 16:16:13 2017

在当前时间上再加5秒

    NSDate *date1 = [date dateByAddingTimeInterval:5];
    NSLog(@"%@",date1);//Thu Sep 13 16:16:23 2017

获取当前所处的时区

    //获取系统的
    NSTimeZone *systemZone = [NSTimeZone systemTimeZone];
    //获取本地的
    NSTimeZone *localZone = [NSTimeZone localTimeZone];

获取当前时区和指定时间的时间差

NSInteger seconds = [systemZone secondsFromGMTForDate:date];
NSLog(@"%lu",seconds);//8小时

时间格式化

yyyy 年
MM 月
dd 日
HH 24小时 hh 12 小时
mm 分钟
ss 秒
Z 时区

  • NSDate---> NSString
    NSDate *now = [NSDate date];
    
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss z";
    NSString *dateStr = [formatter stringFromDate:now];
    NSLog(@"%@",dateStr);//2018-09-13 17:17:33 GMT+8
  • NSString---> NSDate
    NSString *dateString = @"2018-09-13 17:17:33 GMT+8";
    NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
    formatter.dateFormat = @"yyyy-MM-dd HH:mm:ss Z";
    NSDate *lastdDate = [formatter dateFromString:dateString];

你可能感兴趣的:(iOS中的NSDate)