IOS 根據日期獲取該日期所在周,月,年的開始日期,結束日期 的方法

- (void)getMonthBeginAndEndWith:(NSDate *)newDate{
if (newDate == nil) {
newDate = [NSDate date];
}

double interval = 0;

NSDate *beginDate = nil;

NSDate *endDate = nil;

NSCalendar *calendar = [NSCalendar currentCalendar];

[calendar setFirstWeekday:2];//設定周一為周首日

BOOL ok = [calendar rangeOfUnit:NSMonthCalendarUnit startDate:&beginDate interval:&interval forDate:newDate];

//分別修改為 NSDayCalendarUnit NSWeekCalendarUnit NSYearCalendarUnit

if (ok) {

endDate = [beginDate dateByAddingTimeInterval:interval-1];

}else {

return;

}

NSDateFormatter *myDateFormatter = [[NSDateFormatter alloc] init];

[myDateFormatter setDateFormat:@"yyyy.MM.dd"];

NSString *beginString = [myDateFormatter stringFromDate:beginDate];

NSString *endString = [myDateFormatter stringFromDate:endDate];

NSString *s = [NSString stringWithFormat:@"%@-%@",beginString,endString];

NSLog(@"%@",s);

}
//是否在同一周
- (BOOL)isSameWeek:(NSDate *)date
{

     NSCalendar *calendar = [NSCalendar currentCalendar];
    NSDateComponents *comps = [calendar components:NSCalendarUnitWeekOfYear fromDate:date];
    NSDateComponents *selfComps = [calendar components:NSCalendarUnitWeekOfYear fromDate:[NSDate date]];
    NSInteger week = [comps weekOfYear];//今年的第幾周
    NSInteger week2 = [selfComps weekOfYear];

    return week==week2;
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容