联系人列表为空,请先登录
知道 UTC 时间和时间偏移时如何设置 Go 时间值的区域?
我有一个 UTC 时间和一个以秒为单位的时间偏移量,需要返回相应的 Go 时间值。
使用 time.Unix() 函数实例化 UTC 时间值很简单。但是要设置区域,我需要确定 time.Location。
知道 UTC 时间和时间偏移量时如何找到 time.Location ?
如果没有在时区数据库中查找的实际条目,您将无法知道该时间的真实位置。如果您只想使用偏移量,可以使用创建固定位置time.FixedZone
time.FixedZone
edt := time.FixedZone("EDT", -60*60*4) t, _ := time.ParseInLocation("02 Jan 06 15:04", "15 Sep 17 14:55", edt) fmt.Println(t) // 2017-09-15 14:55:00 -0400 EDT
您可以选择指定不存在的区域名称,或者根本不指定,只要您使用的输出格式不需要。
minus4 := time.FixedZone("", -60*60*4) t, _ = time.ParseInLocation("02 Jan 06 15:04", "15 Sep 17 14:55", minus4) fmt.Println(t.Format(time.RFC3339)) // 2017-09-15T14:55:00-04:00
如果没有在时区数据库中查找的实际条目,您将无法知道该时间的真实位置。如果您只想使用偏移量,可以使用创建固定位置
time.FixedZone
您可以选择指定不存在的区域名称,或者根本不指定,只要您使用的输出格式不需要。