首页 > 技术文章 > Go语言学习笔记五--时间time的相关处理以及时间格式化

xwxz 2020-07-14 15:33 原文

 1 package main
 2 
 3 import (
 4     "fmt"
 5     "time"
 6 )
 7 
 8 func main() {
 9 
10     now := time.Now()
11     fmt.Printf("\ncurrent time is %v\n",now)
12 
13     fmt.Printf("%d-%02d-%02d %02d:%02d:%02d\n",now.Year(),now.Month(),now.Day(),now.Hour(),now.Month(),now.Second())
14 
15     //获取时间戳 从1970年到现在的秒数
16     timeNum := now.Unix()
17     println(timeNum)
18     timeNum += 10000000
19     time1 := time.Unix(timeNum,0)
20     fmt.Printf("current time is %v\n",time1)
21 
22     //定时器
23     /*
24     ticker  := time.Tick(time.Second)
25     for i := range ticker{
26         fmt.Printf("定时器时间 %v\n",i)
27         //这里可以放一个定时任务 比如上面就是每1秒钟打印输出一次
28     }
29     */
30 
31     //时间类里面的常量 在go语言中 大写默认表示公用变量可以访问,小写表示私有变量外部无法访问,函数方法亦是如此
32     fmt.Printf("纳秒 %d\n",time.Nanosecond)
33     fmt.Printf("微秒 %d\n",time.Microsecond)
34     fmt.Printf("毫秒 %d\n",time.Millisecond)
35     fmt.Printf("秒 %d\n",time.Second)
36 
37     //时间格式化
38     //go语言的诞生时间 2006 01 02 15:04:05 时间格式化里面的参数只能填写这些数字要不然会格式化错误
39     //真尼玛变态 恶心人 wcnm yyyy-mm-dd HH:MM:SS 他不香吗?
40     timeStr := now.Format("2006/01/02 15:04:05")
41     println(timeStr)
42     timeStr = now.Format("2006-01-02 03:04:05")
43     println(timeStr)
44     timeStr = now.Format("2006**01**02 15/04/05")
45     println(timeStr)
46 
47     //怎么求一个时间的耗时呢?(提示:可以利用时间戳Unix)
48 }

 

推荐阅读