首页 > 后端开发 > Golang > 如何在 Go 中将时间偏移转换为时区和位置?

如何在 Go 中将时间偏移转换为时区和位置?

Susan Sarandon
发布: 2024-12-11 16:25:14
原创
934 人浏览过

How to Convert a Time Offset to a Timezone and Location in Go?

在 Go 中将时间偏移转换为位置/时区

当处理包含时间偏移但缺少位置信息的时间数据时,它有必要创建一个可用的 time.Location 对象来准确记录偏移量并输出相对于用户的时间location.

在Go中,可以使用FixedZone函数来指定相对于UTC具有固定偏移量的位置。例如,要创建偏移量为 11 的位置,请使用以下代码:

loc := time.FixedZone("UTC+11", +11*60*60)
登录后复制

定义位置后,将其设置为所需的时间对象:

t = t.In(loc)
登录后复制

This会将时间对象调整到指定的位置及其时间偏移量。

运行以下代码示例了这一点过程:

package main

import (
    "fmt"
    "time"
)

func main() {
    loc := time.FixedZone("UTC+11", +11*60*60)

    t := time.Now()
    fmt.Println(t)
    fmt.Println(t.Location())

    t = t.In(loc)
    fmt.Println(t)
    fmt.Println(t.Location())

    fmt.Println(t.UTC())
    fmt.Println(t.Location())
}
登录后复制

输出:

2009-11-10 23:00:00 +0000 UTC m=+0.000000001
UTC
2009-11-11 10:00:00 +1100 UTC+11
UTC+11
2009-11-10 23:00:00 +0000 UTC
UTC+11
登录后复制

如图所示,原始时间(UTC 格式)被调整到指定的偏移位置。输出还显示 time.UTC() 方法返回 UTC 中的原始时间,而 time.Location() 方法返回调整后的位置信息。

以上是如何在 Go 中将时间偏移转换为时区和位置?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板