美文网首页
iOS开发之基础篇(10)—— NSDate

iOS开发之基础篇(10)—— NSDate

作者: 看影成痴 | 来源:发表于2017-11-07 19:11 被阅读4次

版本

Xcode 8.2.1

没什么可说的,直接上代码吧。注意实例化日期解析器和设置它的格式。等到后面写到UI篇的时候再提及。

int main(int argc, char * argv[]) {

    //时间戳:计算机元年(1970年1月1日)距离当前时间的总秒数
    //服务器给时间时(如截止日期),最好给时间戳,比较好处理
    //日期解析器:将日期按某种格式输出
    //默认时区:格林威治标准时间GMT

    //获取计算机当前的时间(GMT)
    NSDate *currentDate = [NSDate date];
    NSLog(@"格林威治标准时间GMT:%@",currentDate);

    //日期解析器
    NSDateFormatter *dateFormatter = [NSDateFormatter new];

    //设置时区
    dateFormatter.timeZone = [NSTimeZone timeZoneWithName:@"Beijing"];
//    dateFormatter.timeZone = [NSTimeZone systemTimeZone];     //与设备系统时区一致

    //设置日期格式
    dateFormatter.dateFormat = @"YYYY-MM-dd HH:mm:ss";
    //可删掉不需要的,“-”可换成其他字符,如“:”
    dateFormatter.dateFormat = @"YYYY:MM:dd HH:mm:ss";

    //把NSDate对象转换成字符串输出
    NSString *dateStr = [dateFormatter stringFromDate:currentDate];
    NSLog(@"当前北京时间:%@",dateStr);

    //把字符串转换成NSDate对象
    NSDate *distanceDate = [dateFormatter dateFromString:@"2033:03:03 15:33:33"];    //格式需与之前设置的dateFormat一样
    if (distanceDate) {
        //转换成功
        //计算两个时间相差的总秒数
        NSInteger seconds = [currentDate timeIntervalSinceDate:distanceDate];
        NSLog(@"剩余%ld天%ld小时%ld分%ld秒到期",seconds/(3600*24),seconds%(3600*24)/3600,seconds%3600/60,seconds%60);
        //距离现在的时间
        NSInteger seconds1 = distanceDate.timeIntervalSinceNow;
        NSLog(@"距离现在有%ld秒",(long)seconds1);
        //距离1970年时间
        NSInteger seconds2 = distanceDate.timeIntervalSince1970;
        NSLog(@"距离1970年有%ld秒",(long)seconds2);
    }
}

我的结果:

相关文章

  • iOS开发之基础篇(10)—— NSDate

    版本 Xcode 8.2.1 没什么可说的,直接上代码吧。注意实例化日期解析器和设置它的格式。等到后面写到UI篇的...

  • iOS进阶系列之基础篇

    原文地址iOS进阶系列之基础篇 概述 基础篇包含的范围较广,是一个iOS开发者必须具备的知识。包含了以下方面:OC...

  • iOS 之NSDate的Category

    iOS 之NSDate的Category 判断日期是是否是今年?今天? NSDate+Extension.h NS...

  • iOS 开发之动画篇 - 从 UIView 动画说起

    iOS 开发之动画篇 - 从 UIView 动画说起 iOS 开发之动画篇 - 从 UIView 动画说起

  • runtime总结

    iOS开发之Runtime 苹果官方文档 博客-iOS基础 iOS开发系列--并行开发其实很容易 优质博客列表 优...

  • iOS开发 NSDate

    G: 公元时代,例如AD公元 yy: 年的后2位 yyyy: 完整年 MM: 月,显示为1-12 MMM: 月,显...

  • iOS开发:NSDate

    1:根据输入的时间的到星期几(2017-2-22)-(星期三) -(NSString *)getTheDayOfT...

  • iOS部分控件介绍及设计规范

    iOS及Android图标按钮设计规范 UI设计师需要了解的开发中常用的UI控件(ios篇) iOS交互设计基础之...

  • UI常用的控件

    #iOS开发之UI篇#iOS开发之UI篇 #常用控件介绍1## #UI第09天:滚动视图# ##UIScrollV...

  • iOS知识点(11)UITableView

    最基础的UITableView知识讲解iOS开发之UITableView全面解析 iOS UITableView的...

网友评论

      本文标题:iOS开发之基础篇(10)—— NSDate

      本文链接:https://www.haomeiwen.com/subject/rpzjmxtx.html