ホームページ  >  記事  >  バックエンド開発  >  golang は日付と時間を設定します

golang は日付と時間を設定します

WBOY
WBOYオリジナル
2023-05-13 09:07:36700ブラウズ

Go 言語では、日付の時刻 (日付) を設定する方法がたくさんありますが、最も一般的な方法は、time パッケージを使用する方法です。 timeパッケージには、時刻と日付の操作を処理するための多くの関数が用意されています。この記事では、これに基づいてさらに詳しく説明します。

Go 言語では、まず時間オブジェクトを作成する必要があります。 time.Now() 関数を使用して、現在時刻を取得し、時刻オブジェクトとして保存できます。たとえば、次のコードは現在時刻を取得し、now 変数に保存します。

now := time.Now()

年、月、時刻など、時刻のさまざまな部分を簡単に出力できます。日付などを待ってください。たとえば、次のコードは現在の時刻を出力します。

hour := now.Hour()
fmt.Println(hour)

時間を別の値に変更したい場合は、time.Date() 関数を使用できます。新しい時間オブジェクトを作成します。たとえば、次のコードは、時間を 15 に設定した新しい時刻オブジェクトを作成します。

newTime := time.Date(now.Year(), now.Month(), now.Day(), 15, now.Minute(), now.Second(), now.Nanosecond(), now.Location())

time.Date() 関数では、年、月、を渡す必要があります。新しい日付と時刻を作成するには、 date、hour 、 minutes、sec、および nanoseconds を使用します。新しい時刻を出力することで、これが変更されたことを確認できます。

newHour := newTime.Hour()
fmt.Println(newHour)

この時点で 15 が出力され、コードが時間を 15 に正常に変更したことが証明されます。

さらに、time パッケージには、時間文字列を時間オブジェクトに変換できる time.Parse() 関数も提供されています。たとえば、次のコードは文字列を時間オブジェクトに変換できます。

t, err := time.Parse("2006-01-02 15:04:05", "2021-09-01 15:30:00")
if err != nil {
    panic(err)
}

time.Parse() 関数では、最初のパラメータは時間レイアウト文字列で、2 番目のパラメータは時間レイアウト文字列です。変換する必要がある時刻文字列です。この関数は、変換された時間オブジェクトと考えられるエラーを返します。

最後に、時間のタイムゾーンの問題に注意する必要があります。デフォルトでは、Go 言語の時間オブジェクトは UTC (協定世界時) タイムゾーンを使用して表されます。時間のタイム ゾーン設定は、time.LoadLocation() 関数にタイム ゾーン名を渡すことで変更できます。たとえば、次のコードは、タイム オブジェクトのタイム ゾーンを中国標準時に設定します。

location, err := time.LoadLocation("Asia/Shanghai")
if err != nil {
    panic(err)
}
newTime = newTime.In(location)

ここで、「Asia/Shanghai」は中国標準時のタイム ゾーン名です。

つまり、Go 言語で日時の時間数を変更するには、新しい時間オブジェクトを作成し、新しい時間数を指定します。同時に、誤った結果を避けるためにタイムゾーンの問題に注意する必要があります。

以上がgolang は日付と時間を設定しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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