LoginSignup
2
2

More than 3 years have passed since last update.

【Go】日時を文字列に変換する時によく使うフォーマット指定

Posted at

はじめに

しょっちゅう「あれ?Golangで日付を文字列に変換する時のフォーマットってどんなんだっけ?」となって毎回調べているので、個人的によく使うやつを自分用のメモとして残しておきます。

フォーマットの詳しい指定方法については以下の記事がわかりやすくまとまっています。
本記事では細かい解説はしません。

よく使うフォーマット

年月日時分秒の指定方法さえ覚えておけば大体なんとかなると思います。

日時形式 フォーマット
yyyy-mm-dd 2006-01-02
yyyy-m-d 2006-1-2
HH:MM:SS 03:04:05
H:M:S 3:4:5
yyyy-mm-dd HH:MM:SS 2006-01-02 03:04:05

サンプルコード

package main

import (
    "time"
)

func main() {
    t := time.Date(2019, time.February, 9, 8, 7, 4, 0, time.UTC)
    // => 2019-02-09 08:07:04 +0000 UTC

    /*
     * 日付
     */

    // yyyy-mm-dd
    t.Format("2006-01-02") // => "2019-02-09"

    // yyyy-m-d
    t.Format("2006-1-2") // => "2019-2-9"

    /*
     * 時間
     */

    // HH:MM:SS
    t.Format("03:04:05") // => "08:07:04"

    // H:M:S
    t.Format("3:4:5") // => "8:7:4"

    /*
     * 日付 + 時間
     */

    // yyyy-mm-dd HH:MM:SS
    t.Format("2006-01-02 03:04:05") // => "2019-02-09 08:07:04"
}

おわりに

改めてちゃんと調べてみて気づきましたが、月日時分秒の順番で12345になってるんですね。
そう考えると簡単に覚えられるな。。。まとめた意味なかったかも。。。

参考

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2