美文网首页iOS开发小记
iOS - 日期增加/减少

iOS - 日期增加/减少

作者: Ultraman_Nexus | 来源:发表于2018-08-20 11:57 被阅读0次

在iOS开发中,或许会遇到需要将日期进行增加/减少,尽管项目中只有一个位置需要对日期进行增加,我还是把这个方法进行了封装,以便日后调用方便.

/**

日期增加/减少

@param changeKind 日期修改类型 0-天 1-月 2-年

@param changeNum 日期修改数字

@return 修改后的日期

*/

- (NSString *)changeEndTimeByKind:(NSInteger)changeKind withNum:(int)changeNum {
   
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    formatter.dateFormat = @"yyyy-MM-dd HH:mm";
    NSDate *nowDate = [formatter dateFromString:self];
   
    NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];
    NSDateComponents *addComps = [[NSDateComponents alloc] init];
   
    switch (changeKind) {
        case 0:
            [addComps setDay:changeNum];
            [addComps setMonth:0];
            [addComps setYear:0];
            break;
       
        case 1:
            [addComps setDay:0];
            [addComps setMonth:changeNum];
            [addComps setYear:0];
            break;
           
        case 2:
            [addComps setDay:0];
            [addComps setMonth:0];
            [addComps setYear:changeNum];
            break;
           
        default:
            break;
    }
   
    NSDate *finallDate = [calendar dateByAddingComponents:addComps toDate:nowDate options:0];
    NSString *endTime = [formatter stringFromDate:finallDate];
   
    return endTime;
   
}

PS:方法中的self代表的就是待修改的日期字符串,因为我是在字符串的扩展中写的方法,所以直接用字符串进行调用.

目前就只对年月日进行了修改,changeNum为负数时即为减少.

相关文章

  • iOS - 日期增加/减少

    在iOS开发中,或许会遇到需要将日期进行增加/减少,尽管项目中只有一个位置需要对日期进行增加,我还是把这个方法进行...

  • iOS 日期处理方法

    获取需要增加或减少的年、月、日即可获得新的日期,上述的表示获取mydate日期前一个月的日期

  • 增加与减少

    儿时开始,我们就不断增加知识、思想、能力、朋友、生存与生活物质、欲望等等,我们拥有的越来越多,变得越来越复杂。等到...

  • 增加还是减少?

    我们每天都在获取大量的信息,或者知识,或者技能;越接触就越多,越学习就越多。终身学习是对的,但什么都学,难免力不从...

  • 未来的道路

    增加长期资产, 减少短期资产, 增加安全资产, 减少风险资产, 增加有息资产, 减少无息资产, 增加金融资产, 减...

  • JPush

    一套远程推送解决方案,支持android和iOS两个平台它能够快捷地为iOS App增加推送功能,减少集成APNs...

  • 微博上的微言(18)

    人生要多做增量/加法。生产是增加,消费时减少,学习是增加,懒散是减少,锻炼身体是增加,不爱惜身体是减少,简朴...

  • 快速收集的小工具

    需求日期: 2019-02-09实际需求:减少频繁的操作步骤,增加效率 方案1:小工具的效果 方案2:网页插件的效...

  • 减少淋浴增加泡澡

    “精神压力是身体恶化的最大的原因。散散步,或安静的泡泡澡,慢下来生活,你的心才会打开。不要勉强,不要情绪烦躁...

  • 减少挂虑,增加祷告

    真的可以一无挂虑吗?烦恼叫我心头乱,我们可以“一无挂虑”吗? 这似乎不大可能,因为我们常为自己的孩子、事业、工作、...

网友评论

    本文标题:iOS - 日期增加/减少

    本文链接:https://www.haomeiwen.com/subject/euwkiftx.html