iOS日期格式转换

时间:2013-12-07 11:20:17

标签: ios date nsdate nsdateformatter nsdatecomponents

我有以下例程,它将返回日期&时间字符串,从另一个例程调用。这部分工作正常。

- (NSDate * )startDateOfToday
 {
   NSCalendar *calendar = [NSCalendar currentCalendar];
   NSDateComponents *components = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit
                                           fromDate:[NSDate date]];
   return [calendar dateFromComponents:components];
 }

然而,在调用代码中,需要提供日期字符串时,我需要生成一个不同的日期视图,我可以将其传递给类似于此的标签: -

self.dayLabel.text = [?????????];

并希望日期显示为“星期六,12月7日”或代码返回的任何日期。

据我了解,我需要使用NSDateFormatterstartDateOfToday提供的日期字符串转换为'Sat,Dec 7'的新值。

我很欣赏有很多关于DateFormat的帖子,但我很难理解如何做到这一点。

有人可以帮助我: - a)要转换的代码 b)代替????的代码在dayLabel上,每当我尝试时,它通常会显示转换错误等。

谢谢。

1 个答案:

答案 0 :(得分:1)

试试这个:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setFormatterBehavior:NSDateFormatterBehaviorDefault];
[dateFormatter setDateFormat:@"EEE, MMM d"];

self.dayLabel.text = [dateFormatter stringFromDate:yourDate];
// or self.dayLabel.text = [dateFormatter stringFromDate:[self startDateOfToday]];