我正在尝试将月份和日期与以下字符串分开。
2012-06-29
我尝试通过执行以下操作将字符串格式化为中等样式:
//Setting Up My Formatter
formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterMediumStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
Forming String Into Formatted Date
NSDate *dateFromString = [formatter dateFromString:event.date];
//Separating Components
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit fromDate:dateFromString];
//Assigning Each Component to my Cell's Labels
cell.dayLabel.text = [NSString stringWithFormat:@"%d", [components day]];
cell.monthLabel.text = [NSString stringWithFormat:@"%d", [components month]];
当我运行 NSLogs 时,我的“event.date”返回“2012-06-26 & dateFromString 返回 null。谁能帮助指导我正确的方向?非常感谢!
编辑:
所以我终于从你的帮助中弄清楚我设置的格式不正确。而不是使用:
[formatter setDateStyle:NSDateFormatterMediumStyle];
我现在正在使用:
[formatter setDateFormat:@"yyyy-MM-dd"];
这是我的问题,尽管从组件来看,月份以整数(1、2、3)的形式返回,但我希望它以“MMM”(1 月、2 月、3 月)的形式返回。谢谢!