IOS获取下个月最后一天
2016-07-21 17:45
459 查看
获取某个月的开始或者结束的一天,是比较常用的一个需求,但真要写~ 要是有点头疼的!查资料查到一脸懵B的时候,看到了这个代码片段
参考资料:http://my.oschina.net/yongbin45/blog/156181
<!-- lang: cpp --> // 先定义一个遵循某个历法的日历对象 NSCalendar *greCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar]; // 通过已定义的日历对象,获取某个时间点的NSDateComponents表示,并设置需要表示哪些信息(NSYearCalendarUnit, NSMonthCalendarUnit, NSDayCalendarUnit等) NSDateComponents *dateComponents = [greCalendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit | NSWeekCalendarUnit | NSWeekdayCalendarUnit | NSWeekOfMonthCalendarUnit | NSWeekOfYearCalendarUnit fromDate:[NSDate date]]; NSLog(@"year(年份): %i", dateComponents.year); NSLog(@"quarter(季度):%i", dateComponents.quarter); NSLog(@"month(月份):%i", dateComponents.month); NSLog(@"day(日期):%i", dateComponents.day); NSLog(@"hour(小时):%i", dateComponents.hour); NSLog(@"minute(分钟):%i", dateComponents.minute); NSLog(@"second(秒):%i", dateComponents.second); // Sunday:1, Monday:2, Tuesday:3, Wednesday:4, Friday:5, Saturday:6 NSLog(@"weekday(星期):%i", dateComponents.weekday); // 苹果官方不推荐使用week NSLog(@"week(该年第几周):%i", dateComponents.week); NSLog(@"weekOfYear(该年第几周):%i", dateComponents.weekOfYear); NSLog(@"weekOfMonth(该月第几周):%i", dateComponents.weekOfMonth);想到完全可以通过这个来找到两个月后的第一天~ 然后通过减一天来找到下个月的最后一天,所以,下月最后一天即如下所示:
NSCalendar* cal=[NSCalendar currentCalendar]; NSDateComponents *dateComponents = [cal components:NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit fromDate:[NSDate date]]; //设置日为1号 dateComponents.day =1; //设置月份为后延2个月 dateComponents.month +=2; NSDate * endDayOfNextMonth = [cal dateFromComponents:dateComponents]; //两个月后的1号往前推1天,即为下个月最后一天 endDayOfNextMonth = [endDayOfNextMonth dateByAddingTimeInterval:-1];这段代码总体来说,对于找相对月份的第一天,最后一天,第N天来说,都相对简单!比我看到的网上的其他示例更加简洁!
参考资料:http://my.oschina.net/yongbin45/blog/156181
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- 讲解iOS开发中基本的定位功能实现
- iOS中定位当前位置坐标及转换为火星坐标的方法
- js判断客户端是iOS还是Android等移动终端的方法
- iOS应用开发中AFNetworking库的常用HTTP操作方法小结
- iOS应用中UISearchDisplayController搜索效果的用法
- iOS App开发中的UISegmentedControl分段组件用法总结
- IOS开发环境windows化攻略
- iOS应用中UITableView左滑自定义选项及批量删除的实现
- iOS中UIAlertView警告框组件的使用教程
- 浅析iOS应用开发中线程间的通信与线程安全问题
- iOS中的UIKeyboard键盘视图使用方法小结
- 检测iOS设备是否越狱的方法
- .net平台推送ios消息的实现方法