gpt4 book ai didi

go - 我想通过使用 golang 提供特定位置将 UTC 时间转换为本地时间

转载 作者:IT王子 更新时间:2023-10-29 01:21:10 26 4
gpt4 key购买 nike

我是一名 golang 开发人员,我正在尝试将 UTC 时间转换为本地时间,但我的代码无法正常工作。这是我的代码

utc := time.Now().UTC()
local := utc
location, err := time.LoadLocation("Asia/Delhi")
if err == nil {
local = local.In(location)
}
log.Println("UTC", utc.Format("15:04"), local.Location(), local.Format("15:04"))

最佳答案

您应该重写代码以在错误发生时对其进行处理。默认执行路径应该没有错误。所以,在 time.LoadLocation 之后检查是否有错误:

utc := time.Now().UTC()
local := utc
location, err := time.LoadLocation("Asia/Delhi")
if err != nil {
// execution would stop, you could also print the error and continue with default values
log.Fatal(err)
}
local = local.In(location)
log.Println("UTC", utc.Format("15:04"), local.Location(), local.Format("15:04"))

现在你会得到类似这样的错误信息:

cannot find Asia/Delhi in zip file /usr/local/go/lib/time/zoneinfo.zip
panic: time: missing Location in call to Time.In

您必须为您所在的位置找到一个有效的时区,正如其他人所说,请在维基百科中查找 time zones

关于go - 我想通过使用 golang 提供特定位置将 UTC 时间转换为本地时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45027606/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com