1.格式化
最后更新于:2022-04-02 04:46:46
~~~
package main
import(
"fmt"
"time"
)
func main() {
// 当前时间戳
now := time.Now().Unix()
fmt.Println(now)
// 当前格式化时间
fmt.Println(time.Now().Format("2006-01-02 15:04:05"))
// 这是个奇葩,必须是这个时间点, 据说是go诞生之日, 记忆方法:6-1-2-3-4-5
// 时间戳转str格式化时间
str_time1 := time.Unix(0, 0).Format("2006-01-02 15:04:05")
fmt.Println(str_time1)
str_time2 := time.Unix(1522393808, 0).Format("2006年01月02日 15时04分05秒")
fmt.Println(str_time2)
// str_time3 := time.Unix("1522393808",0).Format("2006-01-02 15:04:05")
// cannot use "1522393808" (type string) as type int64 in argument to time.Unix
str_time4 := time.Unix(1522393808, 0).Format("06-01-02 15:04:05")
fmt.Println(str_time4)
str_time5 := time.Unix(1522393808, 0).Format("01-02 15:04")
fmt.Println(str_time5)
// str格式化时间转时间戳
// 方法一 2018-03-30 15:24:59
the_time := time.Date(2018, 3, 30, 15, 24, 59, 0, time.Local)
unix_time := the_time.Unix()
fmt.Println(unix_time)
fmt.Println(time.Unix(unix_time,0).Format("2006-01-02 15:04:05"))
// 方法二 , 使用time.Parse
/*
返回的不是本地时间, 而是 UTC , 会自动加8小时.
*/
the_time, err := time.Parse("2006-01-02 15:04:05", "2018-03-30 15:24:59")
if err == nil {
unix_time := the_time.Unix()
fmt.Println(unix_time)
fmt.Println(time.Unix(unix_time,0).Format("2006-01-02 15:04:05"))
}
// 使用time.ParseInLocation
the_time, err = time.ParseInLocation("2006-01-02 15:04:05", "2018-03-30 15:24:59",time.Local)
if err == nil {
unix_time := the_time.Unix()
fmt.Println(unix_time)
fmt.Println(time.Unix(unix_time,0).Format("2006-01-02 15:04:05"))
}
// 格式化当前时间
lasttime := time.Now().Format("2006-01-02 15:04:05")
fmt.Println(lasttime)
}
~~~
输出结果:
~~~
1522395496
2018-03-30 15:38:16
1970-01-01 08:00:00
2018年03月30日 15时10分08秒
18-03-30 15:10:08
03-30 15:10
1522394699
2018-03-30 15:24:59
1522423499
2018-03-30 23:24:59
1522394699
2018-03-30 15:24:59
2018-03-30 15:38:16
~~~
输出当前日期是星期几的代码
~~~
package main
import (
"fmt"
"time"
)
func main() {
//时间戳
t := time.Now()
fmt.Println(t.Weekday().String())
}
~~~
返回:
~~~
Thursday
~~~
';