Go语言学习: 日期格式化
时间日期格式化
场景
在Go语言中,时间格式化使用固定的参考时间 2006-01-02 15:04:05
来表示格式,而不是像 YYYY-MM-DD
这种通用的格式。可以通过 time
包中的 Format
和 Parse
方法来进行格式化和解析。
main.go
package main
import (
"fmt"
"time"
)
func main() {
// 获取当前时间
now := time.Now()
// 格式化为年-月-日 时:分:秒
fmt.Println(now.Format("2006-01-02 15:04:05"))
// 格式化为月/日/年
fmt.Println(now.Format("01/02/2006"))
// 格式化为时:分:秒 PM
fmt.Println(now.Format("03:04:05 PM"))
// 格式化为RFC3339格式
fmt.Println(now.Format(time.RFC3339))
}
常用格式说明
2006
表示年01
表示月02
表示日15
表示24小时制的小时03
表示12小时制的小时04
表示分钟05
表示秒PM
表示上下午(12小时制)
解析时间字符串
使用 Parse
方法可以将一个字符串解析为 time.Time
对象:
package main
import (
"fmt"
"time"
)
func main() {
// 要解析的时间字符串
timeStr := "2024-10-29 14:45:00"
// 使用相同格式的参考时间进行解析
t, err := time.Parse("2006-01-02 15:04:05", timeStr)
if err != nil {
fmt.Println("解析错误:", err)
} else {
fmt.Println("解析成功:", t)
}
}