弄潮者的博客

记录学习iOS开发的点滴,互相学习,一起进步~

Objective-C(十四、NSDate类及日期格式化类NSDateFormatter)——iOS开发基础


结合之前的学习笔记以及参考《Objective-C编程全解(第三版)》,对Objective-C知识点进行梳理总结。知识点一直在变,只是作为参考,以苹果官方文档为准~


十四、NSDate类,时间类


注意:下面的所提及的方法都是常用方法,全部列出不大现实,参考Xcode帮助文档即可~


1、时间戳
某一日期到1970年的秒数大小
获取时间戳

 NSDate *date = [NSDate date];
 NSLog(@"%@", date);
 NSTimeInterval time = [date timeIntervalSince1970];
 NSLog(@"%lf", time);

output:

 2015-07-07 10:12:12 +0000
 1436263932.742765

注意:创建date当前时间点的日期对象,是格林威治时间0时区的时间

2、常用方法
a、创建类方法

 + (instancetype)date;
 + (instancetype)dateWithTimeIntervalSinceNow:(NSTimeInterval)secs;
 + (instancetype)dateWithTimeIntervalSinceReferenceDate:(NSTimeInterval)ti;
 + (instancetype)dateWithTimeIntervalSince1970:(NSTimeInterval)secs;

b、昨天,今天,明天

 NSTimeInterval time = 24*60*60;
 NSDate *yesterday = [[NSDate alloc] initWithTimeIntervalSinceNow:-time];
 NSDate *today = [[NSDate alloc] initWithTimeIntervalSinceNow:0];
 NSDate *tomorrow = [[NSDate alloc] initWithTimeIntervalSinceNow:time];
 NSLog(@"%@,%@,%@",yesterday,today,tomorrow);

output:

2015-07-06 13:28:43 +0000,2015-07-07 13:28:43 +0000,2015-07-08 13:28:43 +0000

3、日期格式化类 NSDateFormatter
(1)创建及初始化

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

(2)设置显示格式

 formatter.dateFormat = @"yyyy/MM/dd HH:mm:ss";
  • d:7
  • dd:07
  • M:7
  • MM:07
  • MMM:7月
  • MMMM:七月
  • yy:15
  • yyyy:2015
  • h:12小时制,6
  • hh:12小时制,06
  • HH:24小时制,6
  • HH:24小时制,18
  • m,mm,s,ss都是有无前导0的区别

4、时区NSTimeZone

 NSArray *zoneNames = [NSTimeZone knownTimeZoneNames];
 NSLog(@"%@", zoneNames);

可以通过此语句通过查看有哪些时区

 NSDate *date = [NSDate date];
 NSLog(@"%@", date);

 NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
 formatter.dateFormat = @"yyyy/MM/dd HH:mm:ss";
 NSTimeZone *timeZone = [[NSTimeZone alloc] initWithName:@"America/New_York"];
 formatter.timeZone = timeZone;
// 时间转换字符串
 NSString *dateString = [formatter stringFromDate:date];
 NSLog(@"%@", dateString);

output:

 2015-07-07 10:44:08 +0000
 2015/07/07 06:44:08
阅读更多
版权声明:本文为博主原创文章,转载请注明出处http://blog.csdn.net/zsk_zane https://blog.csdn.net/Zsk_Zane/article/details/46794513
个人分类: Objective-C
上一篇Objective-C(十三、字典类)——iOS开发基础
下一篇Objective-C(十五、内存管理,MRC,循环引用,dealloc和setter方法)——iOS开发基础
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭