字符串轉(zhuǎn)時間一定要通過 time.ParseInLocation
不能直接用Parse
todayZero, _ := time.ParseInLocation("2006-01-02", "2019-01-01 15:22:22" time.Local)
如果用了Parse,二者就會存在8小時時間差!?。?!
補充:golang 常用的日期方法和時區(qū)的坑
1、獲取當(dāng)前時間
time.Now(),返回類型:time結(jié)構(gòu)。
2、字符串轉(zhuǎn)為日期
t, _ := time.ParseInLocation("20060102150405", “你的日期字符串”, time.Local)//這里按照當(dāng)前時區(qū)轉(zhuǎn)
注意此處有坑,一般都是用time.Parse方法,time.Parse方法是轉(zhuǎn)為格林威治時間的,也就是0時區(qū),再轉(zhuǎn)為時間戳就就加上時區(qū)了
3、獲取時間戳
t:=time.Now()
t.Unix()//秒數(shù),毫秒要乘1000
t.UnixNano()//納秒10的9次方秒啊,毫秒要除1000
4、時間格式成字符串(轉(zhuǎn)換)
time.Now().Format("2006-01-02 15:04:05")//返回字符串
不像其他的語言是YYYY-MM-DD HH:mm:ss,這里是"2006-01-02 15:04:05",記住2006年,然后是1 2 3(24小時是15) 4 5,所有就是上面的樣子啦。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
您可能感興趣的文章:- golang 定時任務(wù)方面time.Sleep和time.Tick的優(yōu)劣對比分析
- 解決Golang time.Parse和time.Format的時區(qū)問題
- golang的時區(qū)和神奇的time.Parse的使用方法
- 對Golang中的runtime.Caller使用說明
- Golang中的time.Duration類型用法說明
- golang time包做時間轉(zhuǎn)換操作
- golang xorm及time.Time自定義解決json日期格式的問題
- golang time常用方法詳解