2014-10-27 45 views
0

我有一个字符串:获取所需的日期对象

NSString* [email protected]"2014-10-02 18:15:00 +0000"; 

我怎样才能获得最新的对象与此字符串?

我想:

NSString* [email protected]"2014-10-02 18:15:00 +0000"; 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd hh:mm:ss Z"]; 
    NSDate *mydate = [dateFormatter dateFromString:string]; 
    NSLog(@"mydate = %@",mydate); 

mydate日志空值。我期待登录2014-10-02 18:15:00 +0000。

我想要的就是让日期对象可以与另一个日期对象进行比较2014-10-02 18:15:00 +0000当记录时。

+0

使用'HH '代替'hh'。因为你得到24小时日期格式。 'hh'表示12小时格式,'HH'表示24小时格式。 – 2014-10-27 08:14:52

回答

2

你的字符串是24小时格式,但'hh'是12小时格式。 'HH'是24小时制。这就是为什么它返回null。因为你使用hh这使得12小时甲酸日期

NSString* [email protected]"2014-10-02 18:15:00 +0000"; 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss Z"]; 
    NSDate *mydate = [dateFormatter dateFromString:string]; 
    NSLog(@"mydate = %@",mydate); 

希望这有助于.. :)

+1

虽然这个答案可能会解决问题,但您应该详细阐述一下并解释您的代码的功能。 – 2014-10-27 08:50:56

+0

@DavidRönnqvist>感谢您的指点。 :) – Rashad 2014-10-27 08:58:49

+0

这实际上解决了我的问题。谢谢 – Lasang 2014-10-27 09:16:14

1

:试试这个。但是你得到了24小时的甲酸,所以你必须使用HH,它提供24小时的格式。有关日期甲更详细检查瓦尼亚的回答。这里是有关的几乎所有格式很好的阐释。(Formatting date and time with iPhone SDK?

1

您必须使用“Z”,而不是“Z”为区

NSString* [email protected]"2014-10-02 18:15:00 +0000"; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss z"]; 
NSDate *mydate = [dateFormatter dateFromString:string]; 
NSLog(@"mydate = %@",mydate);