- (NSString*)weekdayStringFromDate:(NSString*)featureDate {
<span style="color:#33cc00;">// 创建 格式 对象</span>
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
<span style="color:#33cc00;"> // 设置 日期 格式 可以根据自己的需求 随时调整, 否则计算的结果可能为 nil</span>
formatter.dateFormat = @"yyyy-MM-dd HH-mm-ss";
<span style="color:#33cc00;">// 将字符串日期 转换为 NSDate 类型</span>
NSDate *inputDate = [formatter dateFromString:featureDate];
<span style="color:#33cc00;">// 生成今天日期时间</span>
NSTimeInterval secondsPerDay = 24 * 60 * 60;
NSDate *today = [[NSDate alloc] init];
NSDate *tomorrow, *yesterday;
tomorrow = [today dateByAddingTimeInterval: secondsPerDay];
yesterday = [today dateByAddingTimeInterval: -secondsPerDay];
<span style="color:#33cc00;">// 10 first characters of description is the calendar date:</span>
NSString * todayString = [[today description] substringToIndex:10];
NSString * yesterdayString = [[yesterday description] substringToIndex:10];
<span style="color:#33cc00;">//根据返回日期判断是否是今天还是昨天</span>
NSString * dateString = [[inputDate description] substringToIndex:10];
if ([dateString isEqualToString:todayString])
{
return @"今天";
} else if ([dateString isEqualToString:yesterdayString])
{
return @"昨天";
}
<span style="color:#33cc00;"> //剩下的返回星期几就行了</span>
NSArray *weekdays = [NSArray arrayWithObjects: [NSNull null], @"周日", @"周一", @"周二", @"周三", @"周四", @"周五", @"周六", nil];
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSTimeZone *timeZone = [[NSTimeZone alloc] initWithName:@"Asia/Shanghai"];
[calendar setTimeZone: timeZone];
NSCalendarUnit calendarUnit = NSWeekdayCalendarUnit;
NSDateComponents *theComponents = [calendar components:calendarUnit fromDate:inputDate];
return [weekdays objectAtIndex:theComponents.weekday];
}