ホームページ >バックエンド開発 >Golang >特定のタイムゾーン オフセットを持つ time.Time オブジェクトを作成するにはどうすればよいですか?

特定のタイムゾーン オフセットを持つ time.Time オブジェクトを作成するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-13 16:35:17576ブラウズ

How to Create a time.Time Object with a Specific Timezone Offset?

タイムゾーン オフセットを使用した Time オブジェクトの作成

特定のタイムゾーン オフセットを含む time.Time オブジェクトを作成するにはどうすればよいですか? 「[07/Mar/2004:16:47:46 -0800]」形式のタイムスタンプを持つ Apache ログがあるとします。これをコンポーネントに解析した後、「-0800」タイムゾーン オフセットを組み込んだ time.Time オブジェクトを構築します。

これに対処するには、time.FixedZone() を使用してカスタム time.Location を作成します。希望のオフセット。例:

loc := time.FixedZone("myzone", -8*3600)
nativeDate := time.Date(2019, 2, 6, 0, 0, 0, 0, loc)

ここで、「myzone」はカスタムの場所に指定された任意の名前で、「-8*3600」は UTC との時差を秒単位で表します。

または、タイムゾーン オフセットを文字列として持っている場合は、調整されたレイアウトで time.Parse() を使用します。 string:

t, err := time.Parse("-0700", "-0800")
if err != nil {
    panic(err)
}

nativeDate := time.Date(2019, 2, 6, 0, 0, 0, 0, t.Location())

この方法では、文字列を使用してオフセットを設定し、結果として得られる time.Time オブジェクトが目的のタイムゾーンを反映するようにします。

以上が特定のタイムゾーン オフセットを持つ time.Time オブジェクトを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。