请教个 golang 时区的问题

2022-05-30 16:23:14 +08:00
 wtfedc

上海时区也会区分 CST ,CDT 吗? CDT 不是北美才有的吗 代码如下

package main

import (
	"fmt"
	"time"
)

func main() {
	var Zone, _ = time.LoadLocation("Asia/Shanghai")
	d1, _ := time.ParseInLocation("2006-01-02T15:04:05", "1987-04-01T00:00:00", Zone)
	d2, _ := time.ParseInLocation("2006-01-02T15:04:05", "1987-08-01T00:00:00", Zone)
	fmt.Println(d1)
	fmt.Println(d2)
	duration := d2.Sub(d1).Hours()
	fmt.Println(duration)
}

输出如下

> 1987-04-01 00:00:00 +0800 CST
> 1987-08-01 00:00:00 +0900 CDT
> 2927

2927 都不能整除 24 ,为什么同样的初始化,莫名其妙被吞了 1 小时

463 次点击
所在节点    问与答
2 条回复
hingle
2022-05-30 16:35:05 +08:00
可以去搜一下国内什么时候实行和暂停了夏令时
wtfedc
2022-05-30 16:38:33 +08:00
@hingle 果然实行过... 1986 ~ 1991

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/856247

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX