1.简介
Golang基础学习-time包的学习.
2.代码
package main
import (
"time"
"fmt"
)
const (
//time format
FormatDay = "2006-01-02"
FormatSecond = "2006-01-02 15:04:05"
FormatMinute = "2006-01-02 15:04"
FormatOnlyHour = "15:04"
)
func main() {
//获取微妙
fmt.Println(time.Microsecond)
//获取月
fmt.Println(time.Month(1))
//当前时间
fmt.Println(time.Now())
fmt.Println(time.Now().String())
//当前时间-小时
fmt.Println(time.Now().Hour())
//当前时间unix时间戳since 1970 -1- 1
fmt.Println(time.Now().Unix())
//当前时间unix时间戳(nanoseconds),since 1970 -1- 1,
fmt.Println(time.Now().UnixNano())
//当前时间加三个小时
fmt.Println(time.Now().Add(time.Hour * 3))
//时间戳转化成时间
currentTime := time.Now().Unix()
tm := time.Unix(currentTime, 0)
fmt.Println(tm)
//当前时间戳转成日期
fmt.Println(time.Now().Format(FormatDay))
fmt.Println(time.Now().Format(FormatSecond))
fmt.Println(time.Now().Format(FormatMinute))
fmt.Println(time.Now().Format(FormatOnlyHour))
//日期转成时间戳
timestamp, _ := time.Parse(FormatDay, "2019-12-13")
fmt.Println(timestamp) //标准时间格式
fmt.Println(timestamp.Unix()) //时间戳
//时区修改后获取时间戳;
loc, _ := time.LoadLocation("Asia/Shanghai")
t, _ := time.ParseInLocation(FormatDay, "2019-12-13", loc)
fmt.Println(t) //标准时间格式
fmt.Println(t.Unix()) //时间戳
}
输出:
函数详解:
1.time.Microsecond
time.Microsecond: 从官网的解释可以看到,Microsecond是time包的一个常量。
1s= 1000*1000 * time.Microsecond
2.time.Month()
可以看到 func(Month)String方法中
Month是int类型,该函数会返回英语月份"January", "February", ...
3.time.Now()
time.Now()会返回一个结构体
通过该结构体可以调用
1.time.Now().Hour() :返回当前时间的小时
2.time.Now().Unix():返回unix时间戳
3.time.Now().UnixNano():64位时间戳
4.time.Now().Add(time.Hour * 3):当前时间增加三小时
5.模拟时间戳转化成标准时间格式
currentTime := time.Now().Unix()
tm := time.Unix(currentTime, 0)
6.时间戳转成日期
const (
//time format
FormatDay = "2006-01-02"
FormatSecond = "2006-01-02 15:04:05"
FormatMinute = "2006-01-02 15:04"
FormatOnlyHour = "15:04"
)
time.Now().Format(FormatDay)
7.日期转成时间戳
timestamp, _ := time.Parse(FormatDay, "2019-12-13")
fmt.Println(timestamp) //标准时间格式
fmt.Println(timestamp.Unix()) //时间戳
8.时区修改后获取时间戳
loc, _ := time.LoadLocation("Asia/Shanghai")
t, _ := time.ParseInLocation(FormatDay, "2019-12-13", loc)
fmt.Println(t) //标准时间格式
fmt.Println(t.Unix()) //时间戳
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。