通過date.now
方法獲取的是基於當地時區的時間
now := date.now()
結果是2019-06-27 10:28:31.282649389 +0800 cst m=+0.000347190
,注意是帶了當地時區+08的
通過time.parse
將字串轉化為時間型別,是utc時間
before, _:= time.parse("2006-01-02 15:04:05", "2019-06-26 22:06:00")
結果是 2019-06-26 22:06:00 +0000 utc
其實我想做的是,將2019-06-26 22:06:00
轉化為東八區的時間,應該用time.parseinlocation
方法
local, _:=time.parseinlocation("2006-01-02 15:04:05", "2019-06-26 20:00:00", time.local)
// 2019-06-26 22:06:00 +0800 cst
// local根據上一步建立的是 2019-06-26 22:06:00 +0800 cst
utclocal :=local.utc()
結果是2019-06-26 14:06:00 +0000 utc
,轉化為utc時間自動-8小時。
local2 :=utclocal.local()
結果是2019-06-26 22:06:00 +0800 cst
const (
ansic = "mon jan _2 15:04:05 2006"
unixdate = "mon jan _2 15:04:05 mst 2006"
rubydate = "mon jan 02 15:04:05 -0700 2006"
rfc822 = "02 jan 06 15:04 mst"
rfc822z = "02 jan 06 15:04 -0700" // rfc822 with numeric zone
rfc850 = "monday, 02-jan-06 15:04:05 mst"
rfc1123 = "mon, 02 jan 2006 15:04:05 mst"
rfc1123z = "mon, 02 jan 2006 15:04:05 -0700" // rfc1123 with numeric zone
rfc3339 = "2006-01-02t15:04:05z07:00"
rfc3339nano = "2006-01-02t15:04:05.999999999z07:00"
kitchen = "3:04pm"
// handy time stamps.
stamp = "jan _2 15:04:05"
stampmilli = "jan _2 15:04:05.000"
stampmicro = "jan _2 15:04:05.000000"
stampnano = "jan _2 15:04:05.000000000"
)
golang時間格式化
golang時間處理 相關包 time 當前時間戳 fmt.println time.now unix 1389058332當前格式化時間 fmt.println time.now format 2006 01 02 15 04 05 這是個奇葩,必須是這個時間點,據說是go誕生之日,記憶方法 6 ...
golang之路 時間格式化
有人問了問go的時間格式化問題,於是乎自己嘗試了下,發現巨坑爹,不按常理出牌啊 format的竟然模版必須如下面的每個數字,t time.unix 1362984425,0 nt t.format 2006 01 02 15 04 05 fmt.println nt 附上現有的go格式 const ...
時間格式化總結
時間轉換 例 2019 10 10 15 06 00 2019年10月10日 15時06分00秒 function dateformattime time 時間轉換 例 2019 10 10 15 06 00 2019年10月10日 function dateformat time else els...