0

我正在从 JSON 数组访问日期,然后我想将其格式化为可读日期,代码如下。

    NSDateFormatter *expirationDateFormat = [[NSDateFormatter alloc] init];
    [expirationDateFormat setDateStyle:NSDateFormatterNoStyle];
    [expirationDateFormat setDateFormat:@"EEE, MMMM dd, yyyy"];

    NSDate *alertExpiresRealDate = [[alerts objectAtIndex:i] valueForKeyPath:@"expires"];
    NSString* alertExpiresDate = [expirationDateFormat stringFromDate:alertExpiresRealDate];
    NSLog(@"%@", alertExpiresRealDate); // 1380319200
    NSLog(@"%@", alertExpiresDate); // (null)
    NSString* alertExpires = [[NSString stringWithFormat:@"Expires: %@", alertExpiresDate] uppercaseString];

即使我将“setDateFormat”更改为像 yyyy 这样简单的东西,它仍然返回(null)。

我有什么明显的遗漏吗?

4

1 回答 1

0

感谢问题中的评论,问题alertExpiresRealDate不是NSDate。

将该行更新为:

NSDate *alertExpiresRealDate = [NSDate dateWithTimeIntervalSince1970:[[[alerts objectAtIndex:i] valueForKeyPath:@"expires"] doubleValue]];

它现在有效。

于 2013-09-26T19:23:25.050 回答