首页 > 后端开发 > Golang > 如何在 Go 中转换和格式化 time.Time 对象?

如何在 Go 中转换和格式化 time.Time 对象?

DDD
发布: 2024-12-21 09:43:18
原创
763 人浏览过

How to Convert and Format time.Time Objects in Go?

在 Go 中将 Time.Time 转换为字符串

在 Go 中,time.Time 是绝对时间值的主要表示形式。它的值表示自 Unix 纪元(1970 年 1 月 1 日午夜 UTC)开始以来经过的纳秒数。

转换为默认字符串格式

转换时间。值转换为字符串,可以使用 String() 方法。此方法返回格式为“2006-01-02 15:04:05.999999999 -0700 MST”的时间。

t := time.Now()
fmt.Println(t.String())
登录后复制

输出:

2023-03-08 15:31:09.340849828 -0500 EST
登录后复制

自定义字符串格式

您还可以使用 Format() 方法自定义字符串格式。此方法采用布局字符串作为参数,并以指定格式返回时间。

布局字符串是指定时间格式的指令字符的组合。例如,以下布局字符串指定格式“yyyy-MM-dd HH:mm:ss”:

t := time.Now()
fmt.Println(t.Format("2006-01-02 15:04:05"))
登录后复制

输出:

2023-03-08 15:31:09
登录后复制

疑难解答:数组赋值

在您的特定代码中,您尝试将 time.Time 值分配给数组中的字符串元素。这将导致类型不匹配错误。要解决此问题,您需要先将 time.Time 值转换为字符串,然后再将其分配给数组。

    userid_string := strconv.Itoa(U.Id)
    user := []string{userid_string, U.Hash, U.Name, U.Email, U.Country, U.IP, U.Created_date.Format("2006-01-02 15:04:05"), US.Timestamp.Format("2006-01-02 15:04:05"), US.Created_date.Format("2006-01-02 15:04:05")}
登录后复制

以上是如何在 Go 中转换和格式化 time.Time 对象?的详细内容。更多信息请关注PHP中文网其他相关文章!

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