Go

【Go】日付指定で日付を扱う

前回は現在時刻を扱いました。

今回は任意の日付を指定して、日付を扱いたいと思います。

日付指定

現在時刻ではなく、日時を指定して日付を扱いたい場合があります。
Dateメソッドを使用します。

package main

import (
	"fmt"
	"time"
)

func main() {
	utc := time.Date(2009, time.November, 10, 23, 0, 0, 0, time.UTC)
	fmt.Println(utc) // 2009-11-10 23:00:00 +0000 UTC
}

Dateメソッドの引数は 年、月、日、時、分、秒、ナノ秒、ロケーション を指定します。

年、日、時、分、秒 は数値(int)を指定します。
月はtimeの定数を指定します。例えば4月なら time.April。
ロケーションは、先ほどロケーションで指定した通りです。

以下は、4月でロケーションに東京を指定した場合になります。

package main

import (
	"fmt"
	"time"
)

func main() {
	jstLoc, err := time.LoadLocation("Asia/Tokyo")
	if err != nil {
		panic(err)
	}
	j := time.Date(2009, time.April, 10, 23, 0, 0, 0, jstLoc) // 2009-04-10 23:00:00 +0900 JST
	fmt.Println(j)
}

コメントを残す

メールアドレスが公開されることはありません。

© DeNnie.Lab All Rights Reserved.