iOS 計算兩個日期之間的天數問題


 

 1 //獲取當前時間若干年、月、日之后的時間
 2 + (NSDate *)dateWithFromDate:(NSDate *)date years:(NSInteger)years months:(NSInteger)months days:(NSInteger)days{  3     NSDate  * latterDate;  4     if (date) {  5         latterDate = date;  6     }else{  7         latterDate = [NSDate date];  8  }  9     NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 10     NSDateComponents *comps = [calendar components:NSCalendarUnitYear|NSCalendarUnitMonth|NSCalendarUnitDay|NSCalendarUnitHour|NSCalendarUnitMinute 11  fromDate:latterDate]; 12 
13  [comps setYear:years]; 14  [comps setMonth:months]; 15  [comps setDay:days]; 16 
17     return [calendar dateByAddingComponents:comps toDate:latterDate options:0]; 18 }

 

 1 /**  2  * @method  3  *  4  * @brief 獲取兩個日期之間的天數  5  * @param fromDate 起始日期  6  * @param toDate 終止日期  7  * @return 總天數  8  */
 9 + (NSInteger)numberOfDaysWithFromDate:(NSDate *)fromDate toDate:(NSDate *)toDate{ 10     NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian]; 11 
12     NSDateComponents    * comp = [calendar components:NSCalendarUnitDay 13  fromDate:fromDate 14  toDate:toDate 15  options:NSCalendarWrapComponents]; 16     NSLog(@" -- >> comp : %@ << --",comp); 17     return comp.day; 18 }

根據以上兩個方法可以獲得更多根據日期計算天數的方法,只是在獲取日期時傳的參數不同,在此就不一一列舉了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM