unsigned units=NSMonthCalendarUnit|NSDayCalendarUnit|NSYearCalendarUnit|NSWeekdayCalendarUnit; NSCalendar *mycal=[[NSCalendar alloc]initWithCalendarIdentifier:NSGregorianCalendar]; NSDate *now=[NSDate date]; NSDateComponents *comp =[mycal components:units fromDate:now]; NSInteger month=[comp month]; NSInteger year =[comp year]; NSInteger day=[comp day]; NSCalendar *gregorian = [NSCalendar currentCalendar]; NSDateComponents *dateComps = [gregorian components:NSWeekdayCalendarUnit fromDate:now]; int daycount = [dateComps weekday] - 2; NSDate *weekdaybegin=[now addTimeInterval:-daycount*60*60*24]; NSDate *weekdayend =[now addTimeInterval:(6-daycount)*60*60*24]; NSDateFormatter *df1=[[NSDateFormatter alloc]init]; NSLocale *mylocal=[[NSLocale alloc]initWithLocaleIdentifier:@"zh_CN"]; [df1 setLocale:mylocal]; [df1 setDateFormat:@"YYYY-MM-d"]; now=weekdaybegin; comp=[mycal components:units fromDate:now]; month=[comp month]; year =[comp year]; day=[comp day]; NSString *date1=[[NSString alloc]initWithFormat:@"%d-%02d-%02d",year,month,day];//所要求的周一的日期 now=weekdayend; comp=[mycal components:units fromDate:now]; month=[comp month]; year =[comp year]; day=[comp day]; NSString *date2=[[NSString alloc]initWithFormat:@"%d-%02d-%02d",year,month,day];//所要求的周日的日期