广告
返回顶部
首页 > 资讯 > 后端开发 > GO >golang如何设置时区
  • 364
分享到

golang如何设置时区

2023-07-05 16:07:52 364人浏览 薄情痞子
摘要

本文小编为大家详细介绍“golang如何设置时区”,内容详细,步骤清晰,细节处理妥当,希望这篇“Golang如何设置时区”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。golang设置时区的方法:1、固定时区到东八

本文小编为大家详细介绍“golang如何设置时区”,内容详细,步骤清晰,细节处理妥当,希望这篇“Golang如何设置时区”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

golang设置时区的方法:1、固定时区到东八区,设置代码如“var cstZone = time.FixedZone("CST", 8*3600)”;2、加载指定时区,设置代码如“var cstSh, _ = time.LoadLocation("Asia/Shanghai")”。

时区的划分

全球以英国伦敦格林威治作为零度经线的起点,每隔15经度为一个时区,15度经线为该时区的中央经线,共分为24个时区。由西向东每隔15经度增加一个时区,相反的,每向西15经度减少一个时区。中国所在时区为东8区。

时间格式

当前时间time.Now()返回的是当地时区的时间:

func main() {    t := time.Now()      fmt.Println(t) //2020-12-16 09:34:19.5828312 +0800 CST m=+0.004002201}

CST时间

CST可以代表如下四个不同的时区:

Central Standard Time (USA) UT-6:00:美国标准时间Central Standard Time (Australia) UT+9:30:澳大利亚标准时间China Standard Time UT+8:00:中国标准时间Cuba Standard Time UT-4:00:古巴标准时间

time.Now()返回的 +0800 CST 表示的就是中国标准时间,与UTC时间有如下的转化:

GMT + 8 = UTC + 8 = CST

Monotonic Clocks 和 Wall Clocks

Wall Clocks表示挂钟时间,存储的是自1970 年 1 月 1 日 0 时 0 分 0 秒以来的时间戳,当系统和授时服务器进行校准时间时间操作时,有可能造成这一秒是2018-1-1 00:00:00,而下一秒变成了2017-12-31 23:59:59的情况。

Monotonic Clocks,意思是单调时间的,所谓单调,就是只会不停的往前增长,不受校时操作的影响,这个时间是自进程启动以来的秒数。

time.Now()返回的m=+0.004002201就是表示Monotonic Clocks

时区设置

go语言中如果不设置指定的时区,通过time.Now()获取到的就是本地时区

func main() {    t := time.Now()   //返回本地时区格式    fmt.Println(t)}

设置时区有两种方式:

  • 固定时区(推荐使用)

var cstZone = time.FixedZone("CST", 8*3600)         // 东八fmt.Println(time.Now().In(cstZone).FORMat("2006-01-02 15:04:05"))

固定时区到东八区。但这种不是对程序的全局设置,每次获取时都需要固定时区

  • 加载时区

var cstSh, _ = time.LoadLocation("Asia/Shanghai") //  上海fmt.Println(time.Now().In(cstSh).Format("2006-01-02 15:04:05"))

加载指定时区。但如果没有go环境使用这种方式就会加载失败,因为时区信息是放在go的安装包中的。

docker中配置时区

如果你用第二种方式加载时区,在打Docker镜像时就需要进行时区相关的配置,配置文件如下:

FROM golang:alpine as buildRUN apk --no-cache add tzdata  //构建阶段加载时区WORKDIR /appADD . /appRUN CGO_ENABLED=0 GOOS=linux go build -o myappFROM scratch as finalCOPY --from=build /app/myapp .### 下面这行是新加的,复制时区相关的信息到最终镜像中,否则程序会找不到改时区COPY --from=build /usr/share/zoneinfo /usr/share/zoneinfoENV TZ=Asia/Shanghai  //在最终阶段设置时区环境变量CMD ["/myapp"]

读到这里,这篇“golang如何设置时区”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网GO频道。

您可能感兴趣的文档:

--结束END--

本文标题: golang如何设置时区

本文链接: https://www.lsjlt.com/news/353390.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • golang如何设置时区
    本文小编为大家详细介绍“golang如何设置时区”,内容详细,步骤清晰,细节处理妥当,希望这篇“golang如何设置时区”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。golang设置时区的方法:1、固定时区到东八...
    99+
    2023-07-05
  • golang 时区设置
    在进行时间计算和显示时,时区的设置是非常重要的。在 Go 语言中,时区的设置非常简单,本文将介绍如何在 Go 中设置时区。一、时区介绍时区是为了方便人们协调世界各地的时间而设立的制度。每个时区都与协调世界时(UTC)相差若干小时,并使用代表...
    99+
    2023-05-19
  • golang如何设置系统时区
    golang设置系统时区的方法,在windows系统下:1、点击任务栏上的“时间和日期”;2、在显示的面板中,点击“更改日期和时间设置”;3、在“日期和时间”选项下,点击“更改时区”;4、再选择所需的时区,并点击“确定”。在linux系统下...
    99+
    2023-07-12
  • 聊聊如何在Golang中设置时区
    Go语言(Golang)在处理时间时,需要设置正确的时区。没设置时区,会导致时间的偏差,从而导致错误的计算。在本文中,我们将介绍如何在Golang中设置时区。Golang中的时间类型在Golang中,有三种时间类型:time.Time、ti...
    99+
    2023-05-14
  • Golang中如何设置时间
    Golang是一种流行的编程语言,它提供了一种灵活的时间管理机制。在许多应用程序中,时间处理是必不可少的部分。本文将介绍Golang中如何设置时间,并提供一些实用技巧。概述处理时间的方式在各种编程语言中都不同。在Golang中,时间是一个包...
    99+
    2023-05-14
  • 详解如何在golang镜像中设置指定时区
    我们在构建镜像的时候,经常会使用alphine作为基础镜像,或者就直接从scratch构建了;这样构建之后的镜像非常的小,传输也更加的快 但是这种镜像也会有一个问题,就是只能使用UT...
    99+
    2023-05-18
    golang镜像设置指定时区 golang设置指定时区 golang镜像 时区
  • golang设置超时
    Golang是一种高效的编程语言,被广泛应用于各种领域的开发中。在一些特定场景下,我们需要设置超时来避免程序的死锁或卡死。在本文中,我将详细介绍Golang如何设置超时,以及几种设置超时的方式。一、使用channel在Golang中,可以使...
    99+
    2023-05-16
  • php5.4如何设置时区
    这篇文章将为大家详细讲解有关php5.4如何设置时区,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php5.4设置时区的方法:1、找到并打开php.ini文件;2、查找“date.timezone”内容;...
    99+
    2023-06-22
  • thinkphp3.2如何设置时区
    这篇文章主要介绍了thinkphp3.2如何设置时区的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇thinkphp3.2如何设置时区文章都会有所收获,下面我们一起来看看吧。设置时区的方法:1、在“php.ini...
    99+
    2023-06-29
  • php5.6如何设置时区
    本篇内容介绍了“php5.6如何设置时区”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!php5.6设置时区的方法:1、在PHP.INI配置文...
    99+
    2023-06-20
  • golang http 超时设置
    Go语言是一种支持并发编程的高效编程语言,因此它在网络编程方面表现突出。HTTP协议是构建互联网应用程序的重要组成部分,Go语言中的http包也提供了大量的接口来支持HTTP请求和响应。在进行HTTP网络调用时,超时配置对于保证程序的稳定性...
    99+
    2023-05-15
  • linux的时区如何设置
    这篇文章主要为大家展示了“linux的时区如何设置”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“linux的时区如何设置”这篇文章吧。方法:1、在终端执行tzselect命令;2、依次选择“As...
    99+
    2023-06-22
  • Linux中如何设置时区和时间
    这篇文章主要介绍了Linux中如何设置时区和时间,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。以印度时区为例:时区的设置修改时区rm /etc/localtime`...
    99+
    2023-06-27
  • php中ci如何设置时区
    这篇文章将为大家详细讲解有关php中ci如何设置时区,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。php ci设置时区的方法:首先找到并打开“conifg/config.php”文件;然后在文件中添加代码...
    99+
    2023-06-15
  • springboot如何统一设置时区
    目录springboot 统一设置时区springboot mysql 时区问题总结寻找原因词义几种情况总结springboot 统一设置时区 控制springboot服务的时区为东...
    99+
    2023-01-06
    springboot设置时区 springboot统一设置时区 springboot时区设置
  • Linux系统如何设置时区
    这篇文章主要为大家展示了Linux系统如何设置时区,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带大家一起来研究并学习一下“Linux系统如何设置时区”这篇文章吧。查看Linux当前时区你可以使用如下命令非常容易地就查看到 ...
    99+
    2023-06-28
  • windows11如何设置中国时区
    这篇“windows11如何设置中国时区”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“windows11如何设置中国时区”文...
    99+
    2023-07-01
  • go语言如何设置时区
    本文小编为大家详细介绍“go语言如何设置时区”,内容详细,步骤清晰,细节处理妥当,希望这篇“go语言如何设置时区”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。两种设置方式:1、固定时区,语法“var c = ti...
    99+
    2023-07-04
  • mysql 时区设置
    方法一:修改 mysql 的配置文件永久设置时区(优点:永久保存设置,缺点:需重启MySQL服务) 找到你MySQL的安装目录(如果不记得安装在哪 可以输入show variables like “%char%”; 查看), 在其my....
    99+
    2023-08-31
    mysql 数据库 java Powered by 金山文档
  • serverTimezone时区设置
    标准配置 无论是使用5.#数据库还是8.#版本数据库,只要jdbc驱动使用的是8.#那么我们就需要考虑数据库时区问题,否则就会报时区错误,标准配置代码如下: # mysqljdbc.username ...
    99+
    2023-09-06
    数据库 mysql java
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作