• 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 }

    根据以上两个方法可以获得更多根据日期计算天数的方法,只是在获取日期时传的参数不同,在此就不一一列举了。

  • 相关阅读:
    Python之paramiko基础
    mysql-创建库之问题
    Jmeter--HTTP Cookie管理器
    Mysql-简单安装
    [JS]jQuery,javascript获得网页的高度和宽度
    去除表单自动填充时,-webkit浏览器默认给文本框加的黄色背景
    读罢泪两行,人生成长必须面对的10个残酷事实
    前端开发面试题JS2
    前端开发面试题JS
    是内耗让你活得特别累
  • 原文地址:https://www.cnblogs.com/mmhc/p/5545752.html
Copyright © 2020-2023  润新知