2 回答

TA貢獻1821條經驗 獲得超5個贊
如果標準庫中不存在時間格式,您可以創建自己的時間格式進行解析。
package main
import (
"fmt"
"time"
)
func main() {
layout := "2006-01-02 15:04:05"
str := "2015-12-23 00:00:00"
t, err := time.Parse(layout, str)
if err != nil {
fmt.Println(err)
}
fmt.Println(t.Unix())
}
輸出
1450828800
我不知道時間格式的官方文檔是什么,但你可以在這里找到它,從第 64 行開始。

TA貢獻1775條經驗 獲得超11個贊
事實上,我不知道 Go 的標準庫中有任何 ISO-8601 解析支持。
讓我們使用最接近的 RFC-3309:
package main
import (
"fmt"
"time"
"strings"
)
func main() {
// convert iso-8601 into rfc-3339 format
rfc3339t := strings.Replace("2015-12-23 00:00:00", " ", "T", 1) + "Z"
// parse rfc-3339 datetime
t, err := time.Parse(time.RFC3339, rfc3339t)
if err != nil {
panic(err)
}
// convert into unix time
ut := t.UnixNano() / int64(time.Millisecond)
fmt.Println(ut)
}
輸出
1450828800000
游樂場:http : //play.golang.org/p/HxZCpxmjvg
希望這可以幫助!
- 2 回答
- 0 關注
- 190 瀏覽
添加回答
舉報