いろいろ備忘録日記

主に .NET とか Go とか Flutter とか Python絡みのメモを公開しています。

Goメモ-403 (ミリ秒を表示)(time.Format)

関連記事

GitHub - devlights/blog-summary: ブログ「いろいろ備忘録日記」のまとめ

概要

以下、自分用のメモです。よく忘れるのでここにメモメモ。。。

大したことないメモなのですが

time.Format() でミリ秒を表示したいときがよくあります。

標準で用意されている time.RFC3339 とか time.TimeOnly とかでは表示されません。

その場合は後ろに .000 を付与すれば良いです。ドットを付与しないと表示されないので注意。

サンプル

package times

import (
    "time"

    "github.com/devlights/gomy/output"
)

// FormatMillisecond は、time.Format() にてミリ秒を出力するサンプルです。
//
// ミリ秒をフォーマットするには ".000" とする。
// ドットを付けないとフォーマットされないので注意。
//
// # REFERENCES
//   - https://pkg.go.dev/time@go1.22.1#Time.Format
func FormatMillisecond() error {
    var (
        millisec  = func() string { return time.Now().Format("05.000") }
        wait100ms = func() { time.Sleep(100 * time.Millisecond) }
    )

    output.Stdoutl("[1]", millisec())
    wait100ms()
    output.Stdoutl("[2]", millisec())
    wait100ms()
    output.Stdoutl("[3]", millisec())

    for range 5 {
        wait100ms()
    }

    output.Stdoutl("[4]", millisec())

    return nil
}

try-golang/examples/basic/times/time_format_millisecond.go at main · devlights/try-golang · GitHub

実行すると以下のようになります。

      $ task
       task: [build] go build .
       task: [run] ./try-golang -onetime

       ENTER EXAMPLE NAME: time_format_millisecond

       [Name] "time_format_millisecond"
       [1]                  25.065
       [2]                  25.165
       [3]                  25.265
       [4]                  25.766


       [Elapsed] 701.858467ms

参考情報

https://pkg.go.dev/time@go1.22.1#Time.Format

Goのおすすめ書籍


過去の記事については、以下のページからご参照下さい。

サンプルコードは、以下の場所で公開しています。