0

目前我有一个 NSString 值,其中包含以下日期作为当前日期

(lldb) po self.currentDate
(NSString *) $5 = 0x002ca8d0 2013-03-29

但是当我将此 NSString 转换为 NSDate 时,它​​显示错误的值

NSDate *myCurrentDate  = [dateFormatterForCurrentDate dateFromString:self.currentDate];

(lldb) po myCurrentDate
(NSDate *) $4 = 0x002cf030 2013-03-28 18:30:00 +0000
4

2 回答 2

3

尝试使用此代码,以考虑本地时区....

NSDateFormatter *dateFormatterForCurrentDate = [[NSDateFormatter alloc] init];
[dateFormatterForCurrentDate setDateFormat:@"yyyy-MM-dd"];
[dateFormatterForCurrentDate setTimeZone:[NSTimeZone localTimeZone]];
NSDate *myCurrentDate  = [dateFormatterForCurrentDate dateFromString:self.currentDate];

希望这会有所帮助...

于 2013-03-29T09:36:27.290 回答
2

设置此日期格式:

    [dateFormatterForCurrentDate setDateFormat:@"yyyy-MM-dd"];

并检查developer.apple.com 中的日期格式化程序

可能对你有用。

于 2013-03-29T09:36:12.037 回答