为了账号安全,请及时绑定邮箱和手机立即绑定

NSDate()或Date()显示错误的时间

NSDate()或Date()显示错误的时间

NSDate()或Date()显示错误的时间当我尝试记录当前日期时:print(NSDate())要么print(Date())(在Swift 3中)或者任何日期对象,它显示错误的时间。例如,现在大概是16:12,但是上面显示了2016-10-08 20:11:40 +0000我的日期是在错误的时区吗?如何修复日期以获得正确的时区?为什么这样,以及如何解决它?如何在打印语句或调试器中轻松地在本地时区中显示任意日期?(请注意,这个问题是一个“振铃”,因此我可以提供一个简单的Swift 3 / Swift 2 Date / NSDate扩展,让您可以轻松地在本地时区显示任何日期对象。
查看完整描述

2 回答

?
Helenr

TA贡献1780条经验 获得超4个赞

一个简单的方法来纠正您的时区的日期将是使用 TimeZone.current.secondsFromGMT()

对于本地时间戳值,例如:

let currentLocalTimestamp = (Int(Date().timeIntervalSince1970) + TimeZone.current.secondsFromGMT())


查看完整回答
反对 回复 2019-07-27
  • 2 回答
  • 0 关注
  • 592 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信