objective-c - NSDateFormatter 损失了一年

标签 objective-c ios nsstring nsdate nsdateformatter

我使用 NSDateFormatter 将日期 NSString 实例转换为 NSDate 对象。有一次,我意识到有些事情不对劲,当我检查时,从字符串转换为 NSDateFormatter 时似乎损失了一整年的时间。 .

代码如下所示:

NSString *dateString = [dictionary objectForKey:@"match_date_time"];
if (dateString) {
     // dateString is "2012-10-30 04:30:00"

     NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
     [formatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
     [formatter setDateFormat:@"YYYY-MM-dd HH:mm:ss"];

     self.date = [formatter dateFromString:dateString];
     // self.date ends up 2011-10-30 04:30:00 +0000, yes 2011 not 2012.
}

有谁知道为什么 NSDateFormatter 失败得如此惨烈?

谢谢!

最佳答案

只需编写下面的代码

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

关于objective-c - NSDateFormatter 损失了一年,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12987901/

相关文章:

ios - 未在曲棍球门户网站 (iOS) 中获取崩溃详细信息

ios - 借助 iOS 中的 AudioQueueServices 示例将音频线性 pcm 转换为 mp3(使用 LAME)

ios - FaceID/TouchID 成功案例不断提示进一步验证

objective-c - + (instancetype) URLWithString 当我尝试输入非拉丁字符时返回 nil

objective-c - 来自 NSString 的 Char(十六进制表示)

iOS/objective-C : Call AlertViewController from sharedInstance

objective-c - 从 XML 标记读取子值

objective-c - 在苹果示例代码中释放 View Controller

objective-c - 自动释放对象的保留计数何时递减?

iphone - 如何使用临时变量在 Objective-C/Xcode 中定义返回的 NSString 函数?