1. time包
2. time.Time類型,用來表示時間
3. 獲取當前時間, now := time.Now()
4. time.Now().Day(),time.Now().Minute(),time.Now().Month(),time.Now().Year()
5. 格式化,fmt.Printf(“%02d/%02d%02d %02d:%02d:%02d”, now.Year()…)
6. 獲取當前時間戳,time.Now().Unix()。
7. 時間戳轉Time類型。
8. 定時器的簡單使用
9. time.Duration⽤來表示納秒
10 一些常量
const ( Nanosecond Duration = 1 Microsecond = 1000 * Nanosecond Millisecond = 1000 * Microsecond Second = 1000 * Millisecond Minute = 60 * Second Hour = 60 * Minute )
代碼
package main import ( "fmt" "time" ) func timeTest() { now := time.Now() fmt.Println(now) year := now.Year() month := now.Month() day := now.Day() hour := now.Hour() minute := now.Minute() second := now.Second() fmt.Printf("%02d-%02d-%02d %02d:%02d:%02d\n", year, month, day, hour, minute, second) // 時間戳 fmt.Println("當前時間戳", now.Unix()) } // 將時間戳轉換為時間 func timestampToTime(timestamp int64) { fmt.Printf("轉換的時間為:%v\n", time.Unix(timestamp, 0)) } // 講時間轉換為時間戳 func timeToStamp(str_time string) { t, _ := time.Parse("2006-01-02 15:04:05", str_time) fmt.Println("當前時間字符串轉換為時間戳是", t.Unix()) fmt.Println("當前時間戳是", time.Now().Unix()) } func task() { fmt.Println("do task") } // 定時器 func timeTick() { tick := time.Tick(1 * time.Second) for i := range tick { fmt.Println(i) task() } } // 常量 func testTimeConst() { fmt.Printf("納秒%d\n", time.Nanosecond) fmt.Printf("微妙%d\n", time.Microsecond) fmt.Printf("毫秒%d\n", time.Millisecond) fmt.Printf("秒%d\n", time.Second) fmt.Printf("分鍾%d\n", time.Minute) } func main() { // timeTest() // stamp := time.Now().Unix() // timestampToTime(stamp) // str_time := time.Now().Format("2006-01-02 15:04:05") // 格式化時間固定寫成2006-01-02 15:04:05 // fmt.Println(str_time, "str_time") // timeToStamp(str_time) // timeTick() testTimeConst() }