Go-內置time包

一.導入包

import "time"code

二.轉換成Time對象

  • 獲取當前時間:time. Now ()
  • 自定義時間:time. Date(year int, month Month, day, hour, min, sec, nsec int, loc *Location)

三.Time對象的方法

年月日周

  • Date() : 返回時間的日期信息 返回值int類型
  • Year() : 返回年 返回值int類型
  • Month () : 返回月 返回值Month類型
  • Day () : 返回日 返回值int類型
  • YearDay() : 一年中對應的天 返回值int類型

年,星期範圍編號

  • ISOWeek () : 返回年,星期範圍編號int類型

時分秒

  • Clock () : 返回 時分秒 返回值int類型對象

  • Hour () : 返回時返回值int類型string

  • Minute () : 返回分 返回值int類型io

  • Second () : 返回秒 返回值int類型import

  • Nanosecond () : 返回納秒 返回值int類型序列化

時間戳

  • Unix() :時間戳 返回值 int64
  • UnixNano() :時間戳(納秒) 返回值 int64

時區

  • Location ():時區返回值 *Location
  • Zone() :時區誤差 返回值string+int

四.時間序列化和返序列化以及比較與計算

參考https://www.jianshu.com/p/9d5636d34f17方法

列化和返序列化

func (t Time) MarshalBinary() ([]byte, error) {} // 時間序列化im

func (t Time) UnmarshalBinary(data []byte) error {} // 反序列化時間戳

func (t Time) MarshalJSON() ([]byte, error) {} // 時間序列化d3

func (t Time) MarshalText() ([]byte, error) {} // 時間序列化

func (t Time) GobEncode() ([]byte, error) {} // 時間序列化

func (t Time) GobDecode() ([]byte, error) {} // 時間序列化

比較與計算

func (t Time) IsZero() bool {} // 是不是零時時間

func (t Time) After(u Time) bool {} // 時間在u 以前

func (t Time) Before(u Time) bool {} // 時間在u 以後

func (t Time) Equal(u Time) bool {} // 時間與u 相同

func (t Time) Add(d Duration) Time {} // 返回t +d 的時間點

func (t Time) Sub(u Time) Duration {} // 返回 t-u

func (t Time) AddDate(years int, months int, days int) Time {} 返回增長了給出的年份、月份和天

相關文章
相關標籤/搜索