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