如何将短日期格式的字符串转换为 NSDate

How to convert short date formatted string to NSDate

我有一个包含短日期格式日期的字符串,我想将其转换为 NSDate。我试过的如下

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"MM/dd/yyyy h:mm a"];
NSDate *date = [dateFormat dateFromString:text];

日期对象始终为 nil,不确定我是否指定了错误的日期格式,或者根本不可能将此类字符串转换为日期?字符串格式如下

Fri Sep 4, 2015 10am

请提出解决方案。

试试这个

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4];
[dateFormatter setDateFormat:@"EEE MMM d,yyyy hha"];
NSDate *date = [dateFormatter dateFromString:@"Fri Sep 4, 2015 10am"];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"EEE MMM d,yyyy hha"];
NSDate *date = [dateFormatter dateFromString:@"Fri Sep 4,2015 10am"];
[dateFormatter setDateStyle:NSDateFormatterShortStyle];
NSString *shortDateString = [dateFormatter stringFromDate:[NSDate date]];