gpt4 book ai didi

iphone - nsdate 按周/年分组

转载 作者:行者123 更新时间:2023-11-29 03:35:52 25 4
gpt4 key购买 nike

我正在根据日期生成图表。用户将选择开始日期和结束日期。

例如,如果开始日期是 3/10/13,结束日期是 15/10/2013。我想按周对日期进行分组。

因此分组应该类似于 3/10/2013 - 5/10/13 、 6/10/13 - 12/10/13 、 13/10/13 - 15/10/13 。

使用nsdatecomponents我可以找到两个日期之间的差异。

    NSDateComponents *componentsToSubtract  = [[NSCalendar currentCalendar] components:NSWeekCalendarUnit fromDate:stDate  toDate:endDate options:0];

但是如何按周分组呢??

最佳答案

我建议您选择一个开始日期,然后恰好添加 7 天,并获取第一周的所有日期,添加天数,并获取第二周的这些日期之间的所有内容,依此类推。

如果您总是想从星期日(或可能是星期一)开始,请使用日期组件来选择星期日的日期:

NSCalendar* calendar = [NSCalendar currentCalendar];
NSDateComponents* components = [calendar components:NSYearForWeekOfYearCalendarUnit |NSYearCalendarUnit|NSMonthCalendarUnit|NSWeekCalendarUnit|NSWeekdayCalendarUnit fromDate:yourApproximateStartingDate];

[components setWeekday:1]; // 1 == Sunday
yourStartingDate = [calendar dateFromComponents:components];
NSTimeInterval sevenDays = 7 * 24 * 60 * 60;
NSDate *secondDate = [yourStartingDate dateByAddingTimeInterval:sevenDays];

然后您可以使用比较器来查看哪些日期在该范围内。

关于iphone - nsdate 按周/年分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19194391/

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