Go での日付解析
「2011-01-19 22:15」形式のタイムスタンプを解析しようとしています。 tar で一般的に使用されるため、開発者は time.Parse 関数の使用で問題が発生する可能性があります。この記事では、この問題の解決策を提供することを目的としています。
次のコード スニペットは、time.Parse を使用してタイムスタンプを解析しようとして失敗した例を示しています。
package main import ( "fmt" "time" ) func main() { var time, error = time.Parse("2011-01-19 22:15", "2011-01-19 22:15") if error != nil { fmt.Println(error.String()) return } fmt.Println(time) }
このコードは、エラー メッセージが表示されて失敗します。 "'解析時間 "2011-01-19 22:15": 残りの月range'".
解決策は、time.Parse の構文とセマンティクスを理解することにあります。 Go 時間パッケージのドキュメントで指定されているように、time.Parse で使用されるデフォルトのレイアウトは、標準の Unix 時間形式に基づいています:
"Mon Jan 2 15:04:05 MST 2006 (MST は GMT-0700) 「
どこ:
カスタム レイアウトを定義するには、開発者は標準時間が希望の形式でどのように表示されるかを決定する必要があります。たとえば、「2011-01-19 22:15」タイムスタンプを解析するには、次のスニペットを使用できます:
package main import ( "fmt" "time" ) func main() { t, err := time.Parse("2006-01-02 15:04", "2011-01-19 22:15") if err != nil { fmt.Println(err) return } fmt.Println(time.SecondsToUTC(t.Seconds())) }
ここでは、カスタム レイアウト文字列「2006-01-02 15」を指定しています。 :04」を入力タイムスタンプと一致させます。結果は Unix 時間形式で出力されます。
以上がGo の `time.Parse` 関数でタイムスタンプを正しく解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。