【问题标题】:NSDate not returning correct dateNSDate 没有返回正确的日期
【发布时间】:2011-09-27 03:41:43
【问题描述】:

我正在像这样打印 NSDate:

NSDate *date = [NSDate date];
NSString *stringDate = [data description];

现在是 2011 年 7 月 1 日晚上 11:43。我的 iPod 甚至在顶部栏上也这么说。但是 stringDate 打印出来:2011-07-02 03:43:46 +0000

这显然是错误的。我已经使用 NSDate 数百万次,但从未遇到过这个问题。有什么问题? 谢谢

【问题讨论】:

标签: iphone objective-c ios cocoa-touch nsdate


【解决方案1】:

您所在地区的时间偏移-04:00? NSDate 在显示日期时会自动调整时间偏移量。试试吧,

NSString *str = [date descriptionWithLocale:[NSLocale currentLocale]];

它会显示正确的日期。

【讨论】:

  • 感谢您的回复。我不明白你的意思。如何更改此时间偏移量?我从未将其设置为 -04:00
  • @sumderungHAY,你可以使用 NSDateFormatter。
【解决方案2】:

您在 GMT -4 时区吗?在这种情况下,它给你的结果是正确的,因为2011-07-02 03:43:46 +00002011-07-01 11:43:46 -4000

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-12-07
  • 2020-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多