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

原创 2015年07月07日 21:34:24

结合之前的学习笔记以及参考《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

相关文章推荐

关于NSDateFormat

1.关于NSDateFormat属性dateFormat的制定。 The followering is an offical example: NSDateFormat *dateFormat= ...

iOS开发:NSDate时区与格式化问题

今天做到DatePicker,一个按钮弹出选择的日期时间,默认的NSDate Date的显示的是格林威治标准时间GMT,在中国肯定不适用,所以要转换为中国时区+8,然后也接触到ios中的日期时间格式化...

NSDate格式化输出

NSString *dateStr, *fileName;     NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];...

iOS 时间格式化

时间转换字符串转时间iOS 中 NSDate 是时间管理类,这里获取到的时间是 UTC 时间,可以根据需要转换成任意地区的时间。 NSFormatter 类是时间格式化类,可以根据指定的格式、地区将...

OCdemo - 07 NSDate 给日期设定格式 NSDateFormatter

// // main.m // OCdemo-07 // // Created by lanou3g on 15/10/15. // Copyright (c) 2015年 Object. A...

Objective-C(十二、快速枚举,枚举器NSEnumerator和集合类NSSet)——iOS开发基础

快速枚举,枚举器NSEnumerator和集合类NSSet的介绍和常用方法

Objective-C(二、类与isa指针,类的封装,set&get,类方法,对象方法)——iOS开发基础

类与isa指针,类定义和声明常见错误分析,类的封装,setter&getter方法,类方法与对象方法区别等等...

Objective-C(三、类与继承,基类,self、super关键字,多态,组合)——iOS开发基础

类与继承,继承优缺点及使用注意要点,基类; self、super作用及使用注意要点;多态产生条件及好处与限制; 继承与组合的区别……...

Objective-C(九、Foundation框架和NSObject类)——iOS开发基础

Foundation框架简介,NSObject类简介,根类的作用,常用方法说明等等

Objective-C(十三、字典类)——iOS开发基础

字典类,可变字典NSDictionary和不可变字典NSMutableDictionary的基本知识和常用方法...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Objective-C(十四、NSDate类及日期格式化类NSDateFormatter)——iOS开发基础
举报原因:
原因补充:

(最多只允许输入30个字)