Unix()関数を使用する擬似乱数datetimeジェネレータで生成されたdatetime文字列を解析する必要があります。生成された日時は、ここで、このコードのバージョンは私のコンピュータや遊び場の両方で動作し、問題だ遊び場での作業中にGolangの時間解析が正しく機能しない
package main
import (
"fmt"
"time"
)
func main() {
a := time.Date(2016, 1, 0, 0, 0, 0, 0, time.UTC).Unix()
kk := time.Unix(a, 0)
t, err := time.Parse("2006-01-02 15:04:05.999999999 -0700 MST", kk.String())
if err != nil {
panic(err)
}
fmt.Println(t)
}
しかし、遊び場、私のパニックの作品以下のバージョン2010年と2017年 の間、様々な日付と時刻のペアを取りますコンピュータ、
package main
import (
"fmt"
"time"
)
func main() {
a := time.Date(2018, 1, 0, 0, 0, 0, 0, time.UTC).Unix()
kk := time.Unix(a, 0)
t, err := time.Parse("2006-01-02 15:04:05.999999999 -0700 MST", kk.String())
if err != nil {
panic(err)
}
fmt.Println(t)
}
ここでエラーがだ、
panic: parsing time "2017-12-31 03:00:00 +0300 +03" as "2006-01-02 15:04:05.999999999 -0700 MST": cannot parse "+03" as "MST"
私が使用して行くのバージョンはgo1.8.3 darwin/amd64
です。
アイデア?
私の最初の考えは、使用しているgolangのバージョンです。 Gogland-EAPで2番目のバージョンをMacで1.8.3を使用して実行しましたが、問題はありませんでした。出力は次のとおりです:2017-12-30 19:00:00 -0500 EST 終了コード0で終了したプロセス – ahillman3
私が使用しているバージョンはgo1.8.3 darwin/amd64です。 IDEや何もない、私はちょうどそれをターミナル経由で実行します。このバージョンの前に、私は1.7.2を使用して1時間前に更新して、更新が私の問題を解決するかどうかを確認しました。 – malisit
私と同じです。私はちょうどそれをコマンドラインでした。問題ない。出力:go run main.go 2017-12-30 19:00:00 -0500 EST – ahillman3