您好,登錄后才能下訂單哦!
<span style="font-size:18px;">//1.創(chuàng)建日期對(duì)象
//創(chuàng)建的NSDate對(duì)象,獲得的永遠(yuǎn)是0時(shí)區(qū)時(shí)間,如果要是求東八區(qū)時(shí)間,就加8個(gè)小時(shí)
NSDate *date = [NSDate date];
NSLog(@"%@",date);
//創(chuàng)建明天此時(shí)的日期(時(shí)間間隔都是以秒為單位計(jì)算的)
NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:24*60*60];
NSLog(@"%@",tomorrow);
//創(chuàng)建昨天此時(shí)的日期(- 表示從現(xiàn)在開(kāi)始向前面算起)
NSDate *yesterday = [NSDate dateWithTimeIntervalSinceNow:-24*60*60];
NSLog(@"%@",yesterday);
//獲取兩個(gè)日期的時(shí)間間隔(timeInterval 是對(duì)雙精度類(lèi)型的重新定義,所以輸出的時(shí)間要用%g,時(shí)間價(jià)格也是按秒來(lái)計(jì)算的)
NSTimeInterval timeInterval = [tomorrow timeIntervalSinceDate:yesterday];
NSLog(@"%g",timeInterval / 60 / 60 / 24);
//比較日期的早晚
//(1)比較兩個(gè)日期中較早的日期(返回值類(lèi)型為NSDate)
NSDate *earlerDate = [yesterday earlierDate:tomorrow];
NSLog(@"%@",earlerDate);
//(2)比較兩個(gè)日期中較晚的日期
NSDate *laterDate = [yesterday laterDate:tomorrow];
NSLog(@"%@",laterDate);
//(3)比較兩個(gè)日期(返回值類(lèi)型為枚舉類(lèi)型,是拿第一個(gè)參數(shù)來(lái)減第二個(gè)參數(shù)的值,枚舉值為 -1,0,1)
NSComparisonResult result = [yesterday compare:tomorrow];
NSLog(@"%ld",result);
//時(shí)間間隔的練習(xí):如果一個(gè)固定的時(shí)間到現(xiàn)在的時(shí)間在60秒以內(nèi),輸出"剛剛",如果在"60 - 3600"輸出"多少分鐘前",如果在"3600 - 3600*24",輸出"在多少小時(shí)前",如果在大于"3600*24"輸出多少天前
NSDate *date1 = [NSDate date];
NSDate *date2 = [NSDate dateWithTimeIntervalSinceNow:100];
NSTimeInterval time = [date2 timeIntervalSinceDate:date1];
if (time > 0 && time <= 60) {
NSLog(@"剛剛");
}else if (time <= 3600){
NSLog(@"%d分鐘前",(int)(time / 60));
}else if (time <= 33600 * 24){
NSLog(@"%d小時(shí)前",(int)(time / 60 / 60));
}else{
NSLog(@"%d天前",(int)(time / 60 / 60 /24));
}
//NSDateFormatter日期格式類(lèi)
//作用:將日期以一定的格式進(jìn)行轉(zhuǎn)換(轉(zhuǎn)換為字符串),另外也可將日期格式串轉(zhuǎn)換為NSDate對(duì)象
NSDate *date3 = [NSDate date];//創(chuàng)建當(dāng)前的日期對(duì)象
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];//創(chuàng)建日期格式對(duì)象
[formatter setDateFormat:@"yyyy-MM-dd HH:mm:SS"];//為對(duì)象設(shè)置日期的格式
//指定日期格式
//HH 表示24小時(shí)制 hh表示十二小時(shí)制
//MM 表示月份 mm 表示分鐘
//dd 表示當(dāng)月的天數(shù) DD表示當(dāng)天處于本年第幾天
//ss 表示秒數(shù)
//如果年份給兩個(gè)yy,則只顯示年份的后兩位,如果給其他個(gè)數(shù)的y,都是顯示完整的年份.
//例如:MM等 如果給兩位,則月份如果是一位時(shí),前面補(bǔ)0.
[formatter setDateStyle:NSDateFormatterFullStyle];//設(shè)置日期輸出的風(fēng)格
[formatter setTimeStyle:NSDateFormatterFullStyle];//設(shè)置時(shí)間輸出的風(fēng)格
NSString *dateStr = [formatter stringFromDate:date3];
NSLog(@"%@",dateStr);
//將日期格式串轉(zhuǎn)化為NSDate對(duì)象@"2008-08-08 20:08:08"
NSString *dateStr1 = @"2008-08-08 20:08:08";
//創(chuàng)建日期格式化對(duì)象
NSDateFormatter *formatter1 = [[NSDateFormatter alloc]init];
//設(shè)置日期格式(一定要和日期格式串中日期的格式保持一致).
[formatter1 setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
//將格式字符串轉(zhuǎn)換為NSData對(duì)象
NSDate *date4 = [formatter1 dateFromString:dateStr1];
NSLog(@"%@",date4);
</span>
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。