time.Parse方法解析时间字符串得到的 time 的时区为UTC,并不会自动使用系统的默认时区。

parse, _ := time.Parse("2006-01-02 15:04:05", "2022-03-30 13:37:03")
//UTC 0
fmt.Println(parse.Zone())
//CST 28800
fmt.Println(time.Now().Zone())

如果我们不想要UTC时区,需要别的时区。可以使用time.ParseInLocation方法自行设置时区。

loc, _ := time.LoadLocation("Asia/Shanghai")
parse, _ := time.ParseInLocation("2006-01-02 15:04:05", "2022-03-30 13:37:03", loc)
//CST 28800
fmt.Println(parse.Zone())
//CST 28800
fmt.Println(time.Now().Zone())