在我的iPhone应用程序中,我试图从Web服务收到的日期字符串中获取EEE MMM dd。
对于时间<&lt;的所有日期。 07:00,NSDateFormatter将日期关闭1天。例如:格式化日期:2010-11-17T05:00:00,格式化日期结果:11月16日星期二
以下是代码段:
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat: @"EEE MMM dd"];
NSDate *dateToFormat = [NSDate dateWithNaturalLanguageString:dateStringToFormat locale:[[NSUserDefaults standardUserDefaults] dictionaryRepresentation]];
NSString *formattedDateString = [dateFormat stringFromDate:dateToFormat];
[dateFormat release];
可能是什么问题?
答案 0 :(得分:10)
可能与时区有关。您可能需要为NSDateFormatter对象的timeZone属性设置适当的值。
答案 1 :(得分:2)
我有同样的问题,但只有在更新到iOS4之后。我的格式化程序是这样的:
[aDateFormatter setDateFormat:@“yyyy-MM-dd HH:mm:ss Z“];
和我的日期是这样的:
2009-10-27 7:30:12 -0700
我设法通过将日期选择器模式设置为之前将最大/最小/选定日期应用于日期选择器来解决问题。就我而言:
aDatePicker.datePickerMode = UIDatePickerModeDate;