golang格式化时间的两种方案

1.通过sprintf格式化

package main

import (
	"fmt"
	"time"
)

func main() {
	var now = time.Now()
	date := fmt.Sprintf("%d-%d-%d %d:%d:%d",now.Year(),now.Month(),now.Day(),now.Hour(),now.Minute(),now.Second())
	fmt.Println(date)
}

输出结果为:

2020-6-5 1:7:50

2.通过now格式化(推荐)

package main

import (
	"fmt"
	"time"
)

func main() {
	var now = time.Now()
	fmt.Println("获取完整的时间:",now.Format("2006-01-02 15:04:05"))
	fmt.Println("获取年月日时间:",now.Format("2006-01-02"))
	fmt.Println("获取时分秒时间:",now.Format("15:04:05"))
}

输出结果为:

获取完整的时间: 2020-06-05 01:12:25
获取年月日时间: 2020-06-05
获取时分秒时间: 01:12:25

从效果上来看,选择第二种格式化方法比较合适,当然第一种也可以实现这种,只不过要自己去实现。

延伸阅读,为什么是2006-01-02 15:04:05

当我第一眼看到这个日期的时候我就在想一个问题:为什么是2006-01-02 15:04:05呢,这个日期有什么含义,然后百度搜了下这个时间点,并没有发现特别值得关注的地方
再接着看到一个有意思的地方,除了年份之外,从左到右依次是1,2,3(15),4,5,年份是6

应该只是为了方便记忆:06年1月2号3点4分5秒

源码免费下载地址:点击下载

你可能感兴趣的:(golang)