我使用NSDateformatter解析日期。在我更新到iOS 7.0.4之前,它工作正常。但是自从更新以来,我得到的是零值,

这是我要解析的日期

11/20/2013 3:30:05 PM

下面是相同的代码
NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
dateFormatter1.dateFormat = @"MM/dd/yyyy hh:mm:ss a";
[dateFormatter1 setLocale:[NSLocale currentLocale]];
NSDate *date = [dateFormatter1 dateFromString:[items objectAtIndex:2]];

但我的约会日期为零。

如何在IOS 7.0.4中进行这项工作?

最佳答案

您的日期已本地化,但您使用的设备是其区域设置。
但是AM / PM在其他地区可能会有所不同。

-(void)dateTest {
    NSString *inputDate = @"11/20/2013 3:30:05 PM";
    NSDateFormatter *dateFormatter1 = [[NSDateFormatter alloc] init];
    dateFormatter1.dateFormat = @"MM/dd/yyyy hh:mm:ss a";
    [dateFormatter1 setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"]];
    NSDate *date = [dateFormatter1 dateFromString:inputDate];
    NSLog(@"date: %@", date); //OUTPUT date: 2013-11-20 15:30:05 +0000
}

10-08 08:05