自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

iOS開發(fā)中時間處理問題

移動開發(fā) iOS
對時間處理,在開發(fā)時,時常碰到。一般有獲取具體的年月日和星期,兩個不同時間的差,某一天的前一天或后一天等;在這里我只介紹獲取具體的年月日和星期,及某一天的前一天或后一天的方法。

對時間處理,在開發(fā)時,時常碰到。一般有獲取具體的年月日和星期,兩個不同時間的差,某一天的前一天或后一天等;在這里我只介紹獲取具體的年月日和星期,及某一天的前一天或后一天的方法。

[[108779]]

對時間的處理一般都會用到NSDate類和NSCalendar類兩個類。

獲取當(dāng)前的時間是:NSDate *nowDate = [NSDate date];獲取具體的年月日就是對nowDate的處理;一般要用到NSCalendar類,首先是對NSCalendar的聲明,再就是屬性的設(shè)置, 其中屬性[calendar components:(...)];很重要;設(shè)置了屬性就可以根據(jù)方法獲取年月日,如int nowYear = [comps year];

獲取星期要先獲取int nowWeek = [comps weekday];再對nowweek的值進(jìn)行判斷,值是從1到7,分別對應(yīng)的星期是從星期天到星期六。

代碼如下:

  1. NSDate *nowDate = [NSDate date];    //這是當(dāng)前的時間,其實(shí)這里可以是任意時間 
  2.     NSCalendar *calendar = [NSCalendar currentCalendar]; 
  3.     NSDateComponents *comps; 
  4.     comps = [calendar components:(NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSWeekdayCalendarUnit) fromDate:nowDate]; 
  5.     int nowYear = [comps year]; 
  6.     int nowMonth = [comps month]; 
  7.     int nowDay = [comps day]; 
  8.     int nowWeek = [comps weekday]; 
  9.     NSString *weekStr = [[NSString alloc] init]; 
  10.     switch (nowWeek) { 
  11.         case 1: 
  12.             weekStr = @"星期天"
  13.             break
  14.         case 2: 
  15.             weekStr = @"星期一"
  16.             break
  17.         case 3: 
  18.             weekStr = @"星期二"
  19.             break
  20.         case 4: 
  21.             weekStr = @"星期三"
  22.             break
  23.         case 5: 
  24.             weekStr = @"星期四"
  25.             break
  26.         case 6: 
  27.             weekStr = @"星期五"
  28.             break
  29.         case 7: 
  30.             weekStr = @"星期六"
  31.             break
  32.      
  33.         default
  34.             break
  35.     } 
  36.     NSLog(@"年:%d;月:%d;日:%d;%@",nowYear,nowMonth,nowDay,weekStr); 

某一天的前一天或后一天的方法:

這里要用到的是NSCalendar,首先也是設(shè)置屬性,和上面一樣;用到最主要的方法是[comps setHour:+24];+24表示獲取下一天,-24表示獲取前一天;還有[comps setMinute:0]和[comps setSecond:0]都要;

***將calendar轉(zhuǎn)換成NSdate;方法如下:

  1. NSDate *nowDate = [calendar dateByAddingComponents:comps toDate:showDate options:0];   //showDate表示某天的date,nowDate表示showDate的前一天或下一天的date 

代碼如下:

  1. NSCalendar *calendar = [NSCalendar currentCalendar]; 
  2.     NSDateComponents *comps; 
  3.     comps = [calendar components:(NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit) fromDate:[[NSDate alloc] init]]; 
  4.  
  5.     [comps setHour:+24]; //+24表示獲取下一天的date,-24表示獲取前一天的date; 
  6.     [comps setMinute:0]; 
  7.     [comps setSecond:0]; 
  8.     NSDate *nowDate = [calendar dateByAddingComponents:comps toDate:showDate options:0];   //showDate表示某天的date,nowDate表示showDate的前一天或下一天的date 

 

責(zé)任編輯:閆佳明 來源: oschina
相關(guān)推薦

2010-03-01 14:40:00

Python RSS處

2010-02-23 17:23:26

Python異常處理

2022-04-24 16:29:28

千年蟲時間計算機(jī)系統(tǒng)

2010-05-17 14:59:05

MySQL事務(wù)處理

2016-11-14 10:06:04

大數(shù)據(jù)max位圖

2015-05-15 09:37:24

iOS開發(fā)爭議

2018-09-18 23:32:35

物聯(lián)網(wǎng)污水處理IOT

2010-01-12 17:26:37

C++編譯器

2022-05-12 23:38:19

SQL數(shù)據(jù)庫字符串

2021-03-10 18:26:49

Tensorflow語音識別音頻處理

2013-07-23 07:24:57

iOS開發(fā)學(xué)習(xí)iOS開發(fā)問題集錦

2023-05-04 07:43:47

MySQL數(shù)據(jù)庫

2022-07-19 08:01:55

函數(shù)Go格式化

2021-09-03 09:06:42

代碼時間開發(fā)

2019-09-20 08:47:57

DockerLinux軟件

2015-03-18 09:29:12

iOS開發(fā)爭議

2017-11-07 13:24:38

Pythontime模塊datetime

2011-05-26 13:36:40

Oracle數(shù)據(jù)庫時間處理

2015-03-09 09:44:35

GmailiOS

2013-07-29 04:57:47

iOS開發(fā)iOS開發(fā)學(xué)習(xí)時間設(shè)置和格式輸出
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號