go time and timestamp operations of summary
- 2020-07-21 08:34:27
- OfStack
Basic operation
01: Gets the current time
dateTime := time.Now()
fmt.Println(dateTime)
02: Get minutes, nanoseconds, months, days, years
year := time.Now().Year() // years
fmt.Println(year)
month := time.Now().Month() // month
fmt.Println(month)
day := time.Now().Day() // day
fmt.Println(day)
hour := time.Now().Hour() // hours
fmt.Println(hour)
minute := time.Now().Minute() // minutes
fmt.Println(minute)
second := time.Now().Second() // seconds
fmt.Println(second)
nanosecond := time.Now().Nanosecond() // A nanosecond
fmt.Println(nanosecond)
03: Gets the current timestamp
timeUnix := time.Now().Unix() // Unit s
timeUnixNano := time.Now().UnixNano() // The unit of nanoseconds
fmt.Println(timeUnix)
fmt.Println(timeUnixNano)
04: Format the timestamp
fmt.Println(time.Now().Format("2006-01-02 15:04:05"))
05: Time stamp to go format
var timeUnix int64 = 1562555859
fmt.Println(time.Unix(timeUnix,0))
// And then you can use Format Such as
fmt.Println(time.Unix(timeUnix, 0).Format("2006-01-02 15:04:05"))
06: str formatting time turn time stamp
t := time.Date(2014, 1, 7, 5, 50, 4, 0, time.Local).Unix()
fmt.Println(t)
Calculation of time
01: Gets the time stamp at 0:00 0:00 today
currentTime := time.Now()
startTime := time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 0, 0, 0, 0, currentTime.Location())
fmt.Println(startTime)
fmt.Println(startTime.Format("2006/01/02 15:04:05"))
02: Get today's 23:59:59 time stamp
currentTime := time.Now()
endTime := time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 23, 59, 59, 0, currentTime.Location())
fmt.Println(endTime)
fmt.Println(endTime.Format("2006/01/02 15:04:05"))
03: Gets the time before 1 minute
m, _ := time.ParseDuration("-1m")
result := currentTime.Add(m)
fmt.Println(result)
fmt.Println(result.Format("2006/01/02 15:04:05"))
04: Gets the time 1 hour ago
m, _ := time.ParseDuration("-1h")
result := currentTime.Add(m)
fmt.Println(result)
fmt.Println(result.Format("2006/01/02 15:04:05"))
05: Gets the time after 1 minute
year := time.Now().Year() // years
fmt.Println(year)
month := time.Now().Month() // month
fmt.Println(month)
day := time.Now().Day() // day
fmt.Println(day)
hour := time.Now().Hour() // hours
fmt.Println(hour)
minute := time.Now().Minute() // minutes
fmt.Println(minute)
second := time.Now().Second() // seconds
fmt.Println(second)
nanosecond := time.Now().Nanosecond() // A nanosecond
fmt.Println(nanosecond)
0
06: Gets the time after 1 hour
year := time.Now().Year() // years
fmt.Println(year)
month := time.Now().Month() // month
fmt.Println(month)
day := time.Now().Day() // day
fmt.Println(day)
hour := time.Now().Hour() // hours
fmt.Println(hour)
minute := time.Now().Minute() // minutes
fmt.Println(minute)
second := time.Now().Second() // seconds
fmt.Println(second)
nanosecond := time.Now().Nanosecond() // A nanosecond
fmt.Println(nanosecond)
1
07: Calculate two timestamps
year := time.Now().Year() // years
fmt.Println(year)
month := time.Now().Month() // month
fmt.Println(month)
day := time.Now().Day() // day
fmt.Println(day)
hour := time.Now().Hour() // hours
fmt.Println(hour)
minute := time.Now().Minute() // minutes
fmt.Println(minute)
second := time.Now().Second() // seconds
fmt.Println(second)
nanosecond := time.Now().Nanosecond() // A nanosecond
fmt.Println(nanosecond)
2
08: Determine whether a time is after a time
stringTime, _ := time.Parse("2006-01-02 15:04:05", "2019-12-12 12:00:00")
beforeOrAfter := stringTime.After(time.Now())
if true == beforeOrAfter {
fmt.Println("2019-12-12 12:00:00 After the current time !")
} else {
fmt.Println("2019-12-12 12:00:00 Before the current time !")
}
09: Determine how much time has passed between one time and the other
year := time.Now().Year() // years
fmt.Println(year)
month := time.Now().Month() // month
fmt.Println(month)
day := time.Now().Day() // day
fmt.Println(day)
hour := time.Now().Hour() // hours
fmt.Println(hour)
minute := time.Now().Minute() // minutes
fmt.Println(minute)
second := time.Now().Second() // seconds
fmt.Println(second)
nanosecond := time.Now().Nanosecond() // A nanosecond
fmt.Println(nanosecond)
4