您的位置:首页 > 其它

NSDate 一些常用方法(待补充)

2016-04-07 15:01 239 查看
http://blog.csdn.net/shijiucdy/article/details/8746658

/**
**判断 日期是否是本周
**/

-(BOOL)isCurrentWeek:(NSString *)dateStr{
NSDateFormatter *dateFormatter=[[NSDateFormatteralloc]init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate *date=[dateFormatter
dateFromString:dateStr];
[dateFormatter release];

NSDate *start;
NSTimeInterval extends;

NSCalendar *cal=[NSCalendarautoupdatingCurrentCalendar];
[cal setFirstWeekday:2];//一周的第一天设置为周一
NSDate *today=[NSDatedate];

BOOL success= [calrangeOfUnit:NSWeekCalendarUnitstartDate:&start
interval: &extendsforDate:today];

if(!success)
return NO;

NSTimeInterval dateInSecs = [date
timeIntervalSinceReferenceDate];
NSTimeInterval dayStartInSecs= [starttimeIntervalSinceReferenceDate];

if(dateInSecs >= dayStartInSecs && dateInSecs < (dayStartInSecs+extends)){
return YES;
}
else {
return NO;
}

}

/***
***根据日期计算周几
****/
-(NSString *)weekDayWithDate:(NSString *)date{
NSDateFormatter *dateFormatter = [[NSDateFormatteralloc]
init];
[dateFormatter setDateFormat:@"yyyy-MM-dd"];
NSDate *fromdate=[dateFormatter
dateFromString:date];

NSCalendar *gregorian = [NSCalendarcurrentCalendar];
NSDateComponents *weekDayComponents = [gregoriancomponents:NSWeekdayCalendarUnit
fromDate:fromdate];
NSInteger mDay = [weekDayComponents
weekday];
[dateFormatter release];
NSString *week=@"";
switch (mDay) {
case 0:{
week=@"日";
break;
}
case 1:{
week=@"日";
break;
}
case 2:{
week=@"一";
break;
}
case 3:{
week=@"二";
break;
}
case 4:{
week=@"三";
break;
}
case 5:{
week=@"四";
break;
}
case 6:{
week=@"五";
break;
}
case 7:{
week=@"六";
break;
}
default:{
break;
}
};
return week;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: