#pragma mark---本章简介(三个类、转换)---
NSDate 时间 ->GTM(国际标准时间)
NSTimeInterval 时间间隔 单位是秒
NSDateFormatter 时间格式器
#pragma mark---1、NSDate 初始化---
NSDate *date = [NSDate date];//当前时间
#pragma mark---NSTimeInterval---
NSTimeInterval interval = 60*60*8;
dateWithTimeIntervalSinceNow 从现在开始过了多少秒的时间 过去的时间是(-) 未来的时间是(+)
NSDate *date1 = [NSDate dateWithTimeIntervalSinceNow:interval];
#pragma mark---*时间戳*---
时间戳:从1970年到现在的 一个时间间隔(字符串) 可以表示一个唯一的时间标识 eg:1452044020 字符串
**重要的初始化方式
*dateWithTimeIntervalSince1970
NSDate *date3 = [NSDate dateWithTimeIntervalSince1970:1452044020];
#pragma mark-日期转时间间隔-
1、可以获得两个日期之间的时间间隔 *timeIntervalSinceDate:(NSDate *)
NSTimeInterval timeInterger = [date3 timeIntervalSinceDate:[NSDate date]];
计算 两个日期差多少小时 多少分 多少秒
int h = timeInterger/(60*60);
int remainTimeInterger = abs(((int)timeInterger)%(60*60));
int s = remainTimeInterger/60;
int m = remainTimeInterger%60;
取绝对值的方法:不区分正负号(无符号)
abs(int)
fabs(double)
fabsf(float)
2、可以获得时间戳(1970-现在)
日期转时间戳
NSString *timeStamp = [NSString stringWithFormat:@"%d",(int)[NSDate date].timeIntervalSince1970];
两个日期之间的比较
(1)、时间戳转成日期
NSDate *one = [NSDate dateWithTimeIntervalSince1970:1451047216];
NSDate *other = [NSDate dateWithTimeIntervalSince1970:1451847216];
(2)、开始比较
earlierDate: 比较one是不是比other早 会返回一个比较早的日期
laterDate: 比较晚
isEqualToDate:比较两个日期是否相同 ->返回BOOL
#pragma mark---NSDateFormatter 时间格式器---
NSDateFormatter 把日期转换成需要的格式
格式化日期的格式用字符串表示
@"yyyy-MM-dd HH:mm:ss"
@"2016-01-06 11:06:30"
作用:
1、可以把日期转换成字符串(指定格式)
2、字符串(指定格式)转换成日期
3、****会把GTM时间转成标准系统时间
日期格式如下:
y 年
M 年中的月份
D 当天是今年的第多少天
d 月份中的天数
F 月份中的周数
E 星期几
a Am/pm
H 一天中的小时数(0-23)
k 一天中的小时数(1-24)
K am/pm 中的小时数(0-11)Number 0
h am/pm 中的小时数(1-12)Number 12
m 小时中的分钟数Number 30
s 分钟中的秒数Number 55
S 毫秒数Number 978
z 时区 General time zone Pacific Standard Time; PST; GMT-08:00
Z 时区RFC 822 time zone -0800
大写M表示月 小写m表示分
大写H表示24小时制 小写h表示12小时制
大写S表示毫秒 小写的s表示秒
初始化
NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
****格式属性
formatter.dateFormat = @"yyyy年MM月dd日HH:mm:ss";
1、把日期转成字符串
NSString *dateString = [formatter stringFromDate:[NSDate date]];
2、把字符串转换成日期
NSDate *date = [formatter dateFromString:dateString];