如何将 go 语言字符串转换为时间戳:使用 time.parse 函数解析字符串为 time.time 值,并根据需要选择适当的解析格式。如果字符串已经包含 unix 时间戳(从 utc 时间 1970-01-01 00:00:00 开始的秒数),可以使用 time.unix 函数将其转换为 time.time 值。
如何将 Go 语言字符串转换为时间戳
在 Go 语言中,可以将字符串转换为时间戳,表示从特定参考点(通常是 UTC 时间)开始经过的秒数。
使用 time.Parse 函数
最简单的方法是使用 time.Parse 函数。它接受一个字符串和一个解析格式作为参数,并返回一个 time.Time 值:
import (
"time"
)
timestamp, err := time.Parse("2006-01-02", "2023-03-08")
if err != nil {
// 处理错误
}
// timestamp 现在包含 2023-03-08 00:00:00 UTC 的时间戳
选择适当的解析格式
time.Parse 函数使用 time.Time 类型支持的任何格式来解析字符串。常见的格式包括:
- "2006-01-02":YYYY-MM-DD
- "2006-01-02T15:04:05":YYYY-MM-DDThh:mm:ss
- "2006-01-02T15:04:05.999Z":YYYY-MM-DDThh:mm:ss.mmmZ (UTC 时间)
- "Mon Jan 2 15:04:05 MST 2006":星期 月 日 时:分:秒 时区 年
使用 time.Unix 函数
如果字符串已经包含 Unix 时间戳(从 UTC 时间 1970-01-01 00:00:00 开始的秒数),可以使用 time.Unix 函数将其转换为 time.Time 值:
timestamp := time.Unix(1678329600, 0) // 2023-03-08 00:00:00 UTC
// timestamp 现在包含 2023-03-08 00:00:00 UTC 的时间戳