初面网初面网

time包

方法解释
Now()当前时间
Year()
Month()
Day()
Hour()
Minute()
Second()
func main() {
	var today = time.Now()
	
  // 所有对时间的api调用,都需要用实例化后的变量
	var year = today.Year()
	var month = today.Month()
	var day = today.Day()
	var hour = today.Hour()
	var minute = today.Minute()
	var sec = today.Second()

	fmt.Printf("%d-%02d-%02d %02d-%02d-%02d", year, month, day, hour, minute, sec)
}

// %02d, 两位数字,不够位数在前补零

另一种格式化写法:

func main() {
	var today = time.Now()
	var str = today.Format("2006-01-02 03:04:05")
	fmt.Printf(str)
}
// 这种格式化是go自带的,2006是go诞生的年份,后面按顺序从01写到05即可
// 其中,03代表12小时制,15代表24小时制

获取当前时间戳

时间戳(UnixTimestamp):自1970年1月1日(08:00

GMT)到当前时间的总秒数

today.Unix()

// 时间戳转时间
func main() {
	var theUnix = time.Now().Unix()
  // Unix第二个参数是毫秒值。没有写0。第一个参数是秒值,同理
	var theTime = time.Unix(theUnix, 0).Format("2006-01-02 15:04:05")
	fmt.Println(theTime)
}

// 时间转时间戳
func main() {
	var str = "2002-02-02 15:00:03"
	var temp = "2006-01-02 15:04:05"
	t, _ := time.ParseInLocation(temp, str, time.Local)
	fmt.Println(t.Unix())
}

更新于 2025/2/26