時間日期類:NSDate
時間的格式符:
注意大小寫
年 year ->y
月 month ->M
日 day ->d
時 hour ->H
分 minute ->m
秒 second ->s
時區(qū) ->Z
星期 ->E
2016-01-19 15:00:14 +8000
//1.創(chuàng)建格式化日期類
NSDateFormatter *df = [[NSDateFormatter alloc]init];
//2.設(shè)置時間格式
// [df setDateFormat:@"yyyy年 M月 d日 HH:mm:ss E"];
[df setDateFormat:@"yyyy年 M月 d日 HH:mm:ss E"];
//3.格式化日期: 日期 ===> 字符串
NSString *formateS = [df stringFromDate:date1];
NSLog(@"%@",formateS);
//4.格式化日期:字符串 ==> 日期
N?String *dateString = @"2015年6.1 14:00:00";
NSDateFormatter *dateFormmater = [[NSDateFormatter alloc]init];
[dateFormmater setDteFormat:@"yyyy年M.d HH:mm:ss;"];
NSDate *dateL = [dateFormmater dateFromstring:dateString];
NSLog(@"%@"dateL);
//1.創(chuàng)建
//當(dāng)前日期
NSDate *date1 = [[NSDate alloc]init];
NSDate *date2 = [NSDate date];
NSLog(@"%@",date1);
//2.時間戳 單位:秒 s
/*
NSTimeInterval 實(shí)際上就是double類型 用來表示秒數(shù)
*/
//從1970年1月1日0時0分0秒 到date1 經(jīng)過的秒數(shù)
NSTimInterval seconds1 = [date1 timeIntervalSince1970];
NSLog(@"%f",seconds1);
//從現(xiàn)在到開始 到 date1 經(jīng)過的秒數(shù)
NSTimeInterval seconds2 = [date1 timIntervalSinceNow];
NSLog(@"%f",seconds2);
//從date1開始到 date2 經(jīng)過的秒數(shù)
NSTimeIterval seconds3 = [date2 timeIntervalSinceDate:date1];
//3.創(chuàng)建指定日期
//構(gòu)架日期:指定日期“一小時”后的日期
NSDate *date3 = [[NSDate alloc]initWithTimeInterval:60*60 sinceDate:[NSDate date]];
//構(gòu)建日期:自1970.1.1 00:00:00 "24小時"后的日期
NSDate *date4 = [[NSDate alloc]initWithTimeIntervalSince1970:3600*24];
//構(gòu)建日期:當(dāng)前日期"一天前"前的日期
NSDate *date3 = [[NSDate alloc]initWithTimeInterval:60*60 sinceDate:[NSDate date]];
//4.獲取日期
NSDate *future = [NSDate distantFuture];
NSLog(@"%@",future);
NSDate *past = [NSDate distantPast];
NSLog(@"%@",past);
//5.比較日期
//獲取較早的時間
NSDate *earlyDate = [date4 earlierDate:date5];
NSLog(@"early %@",earlyDate);
//獲取較晚的日期
NSDate *lateDate = [date4 laterDate:date5];
NSLog(@"later %@",lateDate);
/*____________________________格式化日期 NSDateFormatter_______________________________________*/
//1.創(chuàng)建格式化日期類
NSDateFormatter *df = [[NSDateFormatter alloc]init];
//2.設(shè)置時間格式
[df setDateFormat:@"yyyy年 M月 d日 HH:mm:ss E"];
[df setDateFormat:@"yy年 MM月 dd日 HH:mm:ss E"];
//3.格式化日期: 日期 ==> 字符串
NSString *formateS = [df stringFromDate:date1];
NSLog(@"%@",formateS);
4.格式化日期: 字符串 ==> 日期
NSString *dateString = @"2015年6.1 14:00:00";
NSDateFormatter *dateFormmater = [[NSDateFormatter alloc]init];
[dateFormmater setDateFormat:@"yyyy年M.d HH:mm:ss"];
NSDate *dateL = [dateFormmater datefromString]
NSLog(@"%@",dateL);
假設(shè):入學(xué)日期為1月4日 學(xué)習(xí)時間為4個半月 推算出畢業(yè)時間
//入學(xué)日期 字符串
NSString *start = @"2016.01.04";
//格式類
NSDateFormatter *ddff = [[NSDateFormatter alloc]init];
//設(shè)置格式
ddff.dateFormat = @"yyyy.MM.dd";
//string -> date
NSDate *begin = [ddff dateFromString:start];
//加時間 ==> 畢業(yè)日期
NSDate *end = [NSDate dateWithTimeInterval:(4.5*30*24*60*60) sinceDate:begin];
ddff.dateFormat = @"yyyy-MM-dd";
//date -> string
NSString *endS = [ddff stringFromDate:end];
NSLog(%@,endS);