iOS里怎么获取某个月的某一天-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

iOS里怎么获取某个月的某一天

我需要获取当前月的第几天。举个例子,获取当前月的第一天
我想到的做法是

NSDate *today = [NSDate date];  // 返回2013年2月28日
NSCalendar *cal = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [[NSDateComponents alloc] init];
components.day = 1;
NSDate *firstDay = [cal dateByAddingComponents:components toDate:today options:0];

这个时候firstDay得到的结果是2013年3月1日,不是当前月。。。
我要怎么准确获取当前月的第一天呢?

展开
收起
a123456678 2016-07-20 14:26:16 1797 0
1 条回答
写回答
取消 提交回答
  • NSDate *now = [NSDate date];
    NSCalendar *cal = [NSCalendar currentCalendar];
    NSDateComponents *comps = [cal 
        components:NSYearCalendarUnit | NSMonthCalendarUnit
        fromDate:now];
    comps.day = 1;
    NSDate *firstDay = [cal dateFromComponents:comps];
    2019-07-17 19:58:49
    赞同 展开评论 打赏
问答分类:
问答标签:
相关产品:
问答排行榜
最热
最新
相关电子书
更多
深入剖析iOS性能优化
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载