gpt4 book ai didi

cocoa - 查找下周一的 NSDate

转载 作者:行者123 更新时间:2023-12-03 16:06:49 25 4
gpt4 key购买 nike

我想获取当前日期之后下周一的日期。

因此,如果今天的日期是 2013-08-09(星期五),那么我想获取日期 2013-08-12。

我该怎么做?

最佳答案

这段代码应该能得到你想要的。它只是计算从星期一开始有多少天,并将其从当前日期添加到后面。

NSDate *now = [NSDate date];
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components = [calendar components:NSYearCalendarUnit | NSMonthCalendarUnit | NSWeekCalendarUnit | NSWeekdayCalendarUnit fromDate:now];

NSUInteger weekdayToday = [components weekday];
NSInteger daysToMonday = (9 - weekdayToday) % 7;

NSDate *nextMonday = [now dateByAddingTimeInterval:60*60*24*daysToMonday];

未经测试,但应该可以工作,并且不用担心更改日历的第一个日期。

而且它甚至可以轻松地适应一周中的每隔一天,只需更改 (9 - weekdayToday) % 7; by 7 + weekDayYouWant,记住星期日 = 1,星期一 = 2...

关于cocoa - 查找下周一的 NSDate,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18148224/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com