NSDateFormatter dateFromString在不正确的日期返回nil

时间:2015-11-29 08:53:24

标签: ios nsdateformatter foundation

我的日期看起来像这样

  

2015-11-07T14:02:00Z

我正在尝试使用此方法将其转换为NSDate实例:

$data = 'Your result set goes here';
$this->load->helper(array('dompdf', 'file'));
$html = $this->load->view($view, $data, true);
get_pdf($html,'a4', 'landscape');

但这会让我失望。

由于

1 个答案:

答案 0 :(得分:1)

日期格式似乎不正确:

[formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];

此外,您需要删除以下行,因为您已在上面指定了所有日期组件。

[formatter setDateStyle:NSDateFormatterMediumStyle];
[formatter setTimeStyle:NSDateFormatterMediumStyle];

全部放在一起:

- (NSDate *)formatDateString:(NSString *)string {
    static NSDateFormatter *formatter = nil;
    if (formatter == nil) {
        formatter = [[NSDateFormatter alloc] init];
        [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss'Z'"];
    }
    return [formatter dateFromString:string];
}

-

[formatter dateFromString:@"2015-11-07T14:02:00Z"];