Go での time.Parse の動作を理解する
Go では、time.Parse メソッドを使用して文字列を time.Time 値に変換します。ただし、タイムゾーン変換に関する問題が発生し、予期しない結果が生じる可能性があります。
これらの問題を解決するには、正しい形式文字列を定義することが重要です。 time.Parse によって返されたエラーは、変換プロセスについての洞察を得るために処理する必要があります。
修正された書式文字列
コード例で指定された書式文字列「2013」 -05-13 18:41:34.848 -0700 PDT」は正しくありません。 Go 時間の書式設定構文に従うには、正しい形式は次のとおりである必要があります。
const longForm = "2006-01-02 15:04:05 -0700"
エラー処理を含むサンプル コード
time.Parse によって返されたエラーを処理することによって、あらゆるコンバージョンを識別できます問題:
package main import ( "fmt" "log" "time" ) func main() { const longForm = "2006-01-02 15:04:05 -0700" t, err := time.Parse(longForm, "2013-05-13 18:41:34.848 -0700") if err != nil { log.Fatal(err) } fmt.Println(t) }
出力
修正されたフォーマット文字列と適切なエラー処理により、出力は次のようになります:
2013-05-13 01:41:34.848 +0000 UTC
この出力形式文字列で指定されたタイムゾーンを考慮して、UTC 時間を正確に反映します。 time.Parse の動作を理解し、適切な構文に従うことで、開発者は Go で文字列を時間値に効果的に変換できます。
以上がGo でタイムゾーンを使用して時刻文字列を正しく解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。