NSDate
NSDate 在iOS中NSDate是有关日期操作的核心,一个NSDate代表了一个单独的时间点。在其他类中有关时间的接口一般都是使用这个类。NSDate中提供的方法包括日起对象的创建、比较以及与NSTimeInterval的相互转化
官方网站:
作用:
- 与NTimeInterval之间相互转化
- 一个NSDate对象通过增加或减少interval来生成一个新的NSDate对象
- NSDate与NSDate对象之间的比较
- 以1970或now问参照,获取一个NTimeInterval对象,基本单位是秒
/* NSDate使用示例 */ - (void)dateMethod{ NSDate *date ; // 五种初始化的方式 // date = [NSDate date]; //NSTimeInterval表示时间间隔,是一个double类型=,基本单位是秒 // date = [NSDate dateWithTimeIntervalSince1970:1000]; // date = [NSDate dateWithTimeIntervalSinceNow:3600]; //从现在开始的时间间隔 // date = [NSDate dateWithTimeIntervalSinceReferenceDate:3600]; //2001年开始 date = [NSDate dateWithTimeInterval:3600 sinceDate:[NSDate date]]; NSLog(@"%@",date); // 2013-07-19 06:53:57 +0000 //date比较 NSDate *date1 = [NSDate dateWithTimeInterval:3600 sinceDate:date]; // 比较两个日期哪个大 NSComparisonResult result = [date compare:date1]; if(result == NSOrderedAscending){ NSLog(@"> earlier"); }else if(result == NSOrderedSame){ NSLog(@"=="); }else if(result == NSOrderedDescending){ NSLog(@"< later"); } // 通过比较,返回一个更早的或更晚的date // NSDate *tDate = [date earlierDate:date1]; NSDate *tDate = [date laterDate:date1]; NSLog(@"%@",tDate); // 更具当前date和时间间隔生成的得到一个新的date对象 NSDate *newDate = [date dateByAddingTimeInterval:3600]; NSLog(@"newDate:%@", newDate); // date转化成一个时间段,基本参考点是1970,2001(ReferenceDate),Now,或者是制定一个date NSTimeInterval interval = [date timeIntervalSinceReferenceDate]; NSLog(@"interval:%f", interval); }
NSDateFormatter
官方介绍:
作用:
- 通过一个NSString对象来创建一个NSDate对象;
- 具体的字符串规则详见:http://blog.sina.com.cn/s/blog_6f9a9718010121w3.html
NSTimeZone
NSCalendar
http://www.cnblogs.com/wujian1360/archive/2011/09/05/2168007.html
NSDateComponents 是NSCalendar的内部类,
时间的计算:
对于时间分为 本地挂钟时间 和 UTC时间,所谓的UTC时间就是指表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数 ,毫无疑问这个时间所有计算机都是一样的。那么我们任务栏上的时间是怎么回事呢?那是OS会把计算机所在的当前时区加上,如:中国在东八区,就会在UTC时间上加上 8(小时)*60*60*1000作为本地挂钟时间(不考虑夏令时)。
UTC与GMT区别:
UTC = Coordinated Universal Time. 中文名称为协调世界时.
GMT = Greenwich Mean Time. 中文名称为格林尼治(平)时(这里的"w"是不发音的,而且"Green"要读成"Gren")
UTC = GMT +/- 0.9 s
结论:UTC与GMT可以换用,UTC 间中需要进行 "闰秒" 以控制两者相差。
相关推荐
NSDate时间
NULL 博文链接:https://o0o0o0o.iteye.com/blog/588887
NSDate分类,获得对应中国农历
Swift-NSDate-Extensions 是 Swift NSDate 扩展,帮助开发。 标签:Swift
单例封装NSDateFormatter,根据需求自由封装显示时间格式
NSDate,iphone显示时间,日期的方法集合
多年项目经验封装时间类,可以解决99%遇到的时间的需求,强烈推荐下载使用. 支持年月日时分秒加减运算,包含请假天数年龄计算VIP到期等常见需求算法.
NSDate总结,NSDateFormatter总结,NSCalender总结,倒计时(60秒倒计时,天数倒计时,cell上天数倒计时)
object-c基础语法NSDate, 适合初学者,主要学习NSDate的设置、获取当前时间、当前时间加减秒后的时间、日期比较、日期转换成NSString等
DateHelper - NSDate在Swift中的便利扩展
NSDate-DaboExtensionNSDate分类支持Pod导入pod 'NSDate-DaboExtension', '~> 1.0.0'
时间范围 TimeRange 提供检查 NSDate 是否发生在两个其他 NSDates 之间。 检查 NSDate 是否包含 TimeRange。(例如12:00包含10:00 ~ 20:00 ) 检查一个 TimeRange 是否与另一个 TimeRange 重叠。安装TimeRange 可...
一系列关于Date的小方法,包括NSDate和NSString的互相转换,大家自己看看每个方法的说明吧!
iOS时间戳字符串NSDate转化demo
说明请看:http://blog.csdn.net/dolacmeng/article/details/51344748
主要给大家介绍了关于iOS将时间NSDate转化为毫秒时间戳的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
NSDate扩充功能,可更容易操作NSDate ,它建立在SWIFT的顶部功能提供最好的体验和安全性。特征使用常用比较运算符比较日期: >, >=, <, <= 使用该自定义运算符获取日期之间的间隔>-< 使用算术运算符添加/...
任务它NSDate 创建和格式创建通过调用NSDateComponents构造一个具有当前日期的 NSDate 组件通过调用NSCalendar获取当前日历使用当前日历的方法dateFromComponents 将NSDate 组件更改为 NSDate 格式通过调用...
#ChatDateToString这是一个传入NSDate输出仿照手机QQ时间戳的类1.传入Date大于当前时间,则输出"Time Error"2.传入时间与今天是同一天,则显示为HH:mm形式3.传入时间是昨天,则显示为昨天 HH:mm形式4.传入时间是7日...
用于 NSDate 上基本比较和时间操作的 Swift 扩展 比较 这些扩展向 NSDate 添加了基本的比较运算符 <、>、<=、>=、==、!=。 所以而不是像这样的东西: firstDate.compare(secondDate) == ...