将NSString 8-8-2015 12:00:00 AM转换为NSDate

时间:2015-08-12 15:10:39

标签: ios objective-c nsstring nsdate nsdateformatter

我知道这个问题被问了太多次,但没有一个符合我的要求。

我有" 8-8-2015 12:00:00 AM"在NSString名为strEventTimeBegin。如何将此NSString转换为NSDate?这是我尝试过但返回null。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];
//[dateFormatter setDateStyle:NSDateFormatterMediumStyle];

NSDate *startEventDate = [dateFormatter dateFromString:strEventTimeBegin];

1 个答案:

答案 0 :(得分:1)

从记忆中,但这应该有效:

[dateFormatter setDateFormat:@"d-M-yyyy hh:mm:ss a"];

在你的例子中解释一下;

  1. 日期和年份都是倒退。
  2. 您使用了2位数的日期和 几个月(它正在寻找08-08-2015)。
  3. 你错过了这个时期 (AM / PM)标识符。