2012-02-24 50 views
1

我遇到此消息的問題。這似乎並不能夠轉換成的NSDate我dateStringCFStringRef無效問題

//dateString = @"2012-03-24 00:00:00 +0000" 
+ (NSDate *)dateFromString:(NSString *)dateString { 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"]; 
    [dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0]]; 
    NSDate *result = [dateFormatter dateFromString:dateString]; //Invalid CFStringRef 
    [dateFormatter release]; 
    return result; 
} 

回答

0

如果在

NSString *dateString = @"2012-03-24 00:00:00 +0000"; 

與偏移+0000指定的時區,你必須使用:

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss ZZ"]; 

注意雙'Z'和去除的'T'

檢查here瞭解更多信息。

0

您的日期字符串不會對年底Z(該格式要求),它確實有一個時區偏移量(其格式不期望)。

+0

我拿出了Z,它仍然不起作用 – TheLearner 2012-02-24 14:35:49

+0

@TheLearner:你的日期字符串中也有一個時區偏移量 – JeremyP 2012-02-24 14:36:49