【发布时间】:2014-02-22 00:07:21
【问题描述】:
我想要做的是有一个具有正确当前时间的 NSDate。当我将日期转换为字符串时,时间是正确的,但是当我转换回 NSDate 时,时间刚刚结束。
NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"dd-MM-yyyy HH:mm"];
[dateFormatter setLocale:[NSLocale currentLocale]];
NSString *dateString = [dateFormatter stringFromDate:[NSDate date]];
NSDate* myDate = [dateFormatter dateFromString:dateString];
NSLog(@"datete:%@ and %@", myDate, dateString);
2014-02-22 00:18:00 +0000 和 21-02-2014 16:18
【问题讨论】:
-
如果您显示来自
NSLog的输出,这将非常有帮助。它可能没有错。这就是NSDate的登录方式 - 在 UTC 时区。 -
顺便说一句 - 无需将日期格式化程序的区域设置为当前区域 - 这是默认设置。
-
我用nslog更新了原帖。
-
@Bomiz 查看我的答案以了解问题的解释。
标签: ios nsdate nsdateformatter