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

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

DDD
DDD原创
2024-12-21 09:43:18725浏览

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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn