iOS获取时间

项目中肯定会有很多获取时间进行计算的地方

获取当前时间

NSDate *date = [NSDate date];

NSLog(@"%@", date);

打印出来会发现会比当前时间少几个小时因为这里的时间是世界标准时间

所以为了获取我们的时间得这样

//通过系统时间获取时间zone

NSTimeZone *zone = [NSTimeZone systemTimeZone];

//通过zone获取跟标准时间的时间差

NSInteger interval = [zone secondsFromGMTForDate: date];

//最后通过时间差获取当前时间

NSDate *localDate = [date  dateByAddingTimeInterval: interval];

获取了当前时间,我们一般不全会用,需要通过已知时间分别获取年月日时分秒等来进行需要的操作需要NSDateComponents这个类,类似一个装时间的容器

//获取时间日历

NSCalendar *calendar = [NSCalendar currentCalendar];

//在这里把需要装入容器的时间枚举类型都连上

NSUInteger unitFlags = NSCalendarUnitYear|NSCalendarUnitMonth |NSCalendarUnitDay|NSCalendarUnitWeekday;

//基本的几个如下,

NSCalendarUnitYear            //年

NSCalendarUnitMonth      //月

NSCalendarUnitDay              //日

NSCalendarUnitHour        //时

NSCalendarUnitMinute        //分

NSCalendarUnitSecond        //秒

NSCalendarUnitWeekday          //星期

NSDateComponents *dateComponent = [calendar components:unitFlags fromDate:date];

然后通过获取dateComponent的属性获取相应的值

例如 我要获取年份

NSInteger week=dateComponent.year;

这样可以在项目中对时间进行各种操作了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • .h文件 #import #define D_MINUTE60 #define D_HOUR3600 #defin...
    屈涯阅读 3,759评论 2 0
  • 在iOS开发中,经常会遇到各种各样的时间问题,8小时时差,时间戳,求时间间隔,农历等等。解决办法网上比比皆是,但大...
    真巧了_嘿阅读 7,760评论 0 7
  • 现实生活里,在你我的身边或多或少的存在着容易发怒的人,急性子,甚至讲话很冲,声音响亮。周围的人一般都只知道此人脾气...
    贫道告诉你阅读 4,326评论 1 2
  • 看过《陆垚知马俐》这部电影后,确实有点心酸!你们觉得呢? 天下有情人钟情眷属,能和自己喜欢的人最后走在一起了,确实...
    番茄酱小猪阅读 2,350评论 0 0