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