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

获取时区上一个午夜以来的持续时间

获取时区上一个午夜以来的持续时间

Go
千巷猫影 2022-10-10 15:37:23
我想获得自上一个时区午夜以来的持续时间。我尝试了以下方法:estLocation, _ := time.LoadLocation("America/New_York")nowEST := time.Now().In(estLocation)midnightEST := nowEST.Truncate(24 * time.Hour)diff := time.Since(midnightEST)以及使用Round而不是Truncate.但是,这只会将时钟设置为 24 小时,而不是返回美国东部标准时间的午夜。如何做到这一点?
查看完整描述

1 回答

?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

通过从日期构造时间来获取午夜时间:


loc, _ := time.LoadLocation("America/New_York")

now := time.Now().In(loc)

midnight := time.Date(now.Year(), now.Month(), now.Day(), 0, 0, 0, 0, loc)

从现在减去午夜得到持续时间:


d := now.Sub(midnight)

在操场上运行它。请注意 time.Now() 是操场上的常量值。


查看完整回答
反对 回复 2022-10-10
  • 1 回答
  • 0 关注
  • 98 浏览
慕课专栏
更多

添加回答

举报

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