あなたのステッカー ツールをここにピン留めできます。このブラウザに保存されます。
ツールをピン留めすると、そのステッカーがここに並びます。
すべてのツール 時間 時刻レイアウト このツールの動作には JavaScript が必要です。下の説明は JavaScript なしでも読めます。
定義済みのレイアウト RFC3339 2006-01-02T15:04:05Z07:00RFC1123 Mon, 02 Jan 2006 15:04:05 MSTRFC822 02 Jan 06 15:04 MSTKitchen 3:04PMANSIC Mon Jan _2 15:04:05 2006DateTime 2006-01-02 15:04:05DateOnly 2006-01-02TimeOnly 15:04:05UnixDate Mon Jan _2 15:04:05 MST 2006RFC3339Nano 2006-01-02T15:04:05.999999999Z07:00
基準時刻のトークン Go の基準時刻は Mon Jan 2 15:04:05 MST 2006 です。01/02 03:04:05PM '06 -0700 と書くと、月、日、時、分、秒、年、タイムゾーンのオフセットが 1 から 7 まで順に並びます。 トークンを選ぶと、レイアウトのカーソル位置に挿入します。
このツールについて レイアウトはパターンではなく見本 多くの言語では、%Y-%m-%d や YYYY-MM-DD のようなプレースホルダーで日付の形式を表します。Go のやり方は異なります。基準時刻という特定の 1 つの時点をどう表示したいかを書くと、time.Format がほかの時刻も同じように出力します。基準時刻は Mon Jan 2 15:04:05 MST 2006 です。
この値は、アメリカ式の順序で 01/02 03:04:05PM '06 -0700 と書いたときに数字が順に増えるように選ばれています。月が 1、日が 2、時が 3(24 時間制では 15)、分が 4、秒が 5、年が 6、タイムゾーンのオフセットがマイナス 7 時間です。それぞれの値は 1 つの意味しか持たないため、Go は 01 が月で 04 が分だと判別できます。
よくある間違い 01 が月、02 が日なので、日を先に書く日付は 02/01/2006 になります。基準の順序に慣れていないと、これは誤りに見えます。ほかの言語の書き方で書いたレイアウトも、エラーにはなりません。Go は認識できない部分をそのままテキストとして出力するので、YYYY-MM-DD は変わらずに出力されます。また、認識できる数字はすべてトークンとして読むので、2021-12-25 は無関係な数字の並びになります。
トークンをエスケープする方法はありません。トークンを含むテキストは置き換えられるため、レイアウト内に文字どおりの Jan や Mon、2 のような数字を書くと、値に変わってしまいます。そうしたテキストは、レイアウトの外で付け足してください。
Z07:00 は、UTC では Z、それ以外では数値のオフセットを出力します。これは RFC 3339 が求める形式です。一方、-07:00 は常に数値を出力します。秒の小数部は、.000 なら末尾のゼロを残し、.999 なら取り除きます。月名と曜日名は常に英語です。
プレビューと変換のしくみ プレビューは、WebAssembly にコンパイルしてブラウザで実行している Go 標準ライブラリの time.Format が生成します。そのため、同じ時点とオフセットに対して Go のプログラムが出力するものと同じ結果を表示します。現在時刻、お使いのタイムゾーンの UTC オフセットとその略称はブラウザから取得します。ブラウザがタイムゾーンの略称を持たない場合は、+03 のような数値の略称を使います。これは、独自の英字の略称を持たないタイムゾーンに対して Go が出力するものと同じです。タイムゾーンによっては、ブラウザの略称が、Go が読み込むタイムゾーンデータベースの略称と異なる場合があります。
2 つの形式が表現できる範囲は同じではありません。strftime には Z07:00 のように動作する指定子がなく、Go には週番号(%U、%W、%V)、数値の曜日(%u、%w)、エポックからの秒数(%s)に対応するトークンがありません。変換ツールはそうした部分をそのまま残し、欄の下に表示します。また、strftime 形式に含まれる文字どおりのテキストのうち、Go がトークンとして読み取ってしまうものも表示します。レイアウトではそれを保持できないためです。
strftime 側の指定子の一部は、すべての実装にあるわけではない拡張です。ゼロ埋めを外すフラグ(%-d)、コロン付きのオフセット(%:z)、小数部の指定子 %L、%f、%N がそうです。変換先の言語のドキュメントを確認してください。
よくある質問 Go が YYYY-MM-DD ではなく 2006-01-02 15:04:05 を使うのはなぜですか? Go のレイアウトは、固定の基準時刻 Mon Jan 2 15:04:05 MST 2006 をどう表示するかを示すものです。その各部分は月、日、時、分、秒、年、タイムゾーンのオフセットの順に 1 から 7 の数字になっているため、プレースホルダーの構文を使わなくても、どの数字が日付のどの部分かが一意に決まります。
ISO 8601 や RFC 3339 のタイムスタンプに対応する Go のレイアウトは何ですか? 2006-01-02T15:04:05Z07:00 を使います。これは定数 time.RFC3339 です。秒の小数部が必要なら、2006-01-02T15:04:05.999999999Z07:00 である time.RFC3339Nano を使ってください。
Go のレイアウトでミリ秒を出力するには? 15:04:05.000 のように、秒の後ろに .000 を付けます。0 の 1 つが 1 桁にあたるので、.000000 ならマイクロ秒になります。末尾のゼロを省くには、.999 のように 9 を使います。
Go のレイアウトで 24 時間制にするには? 時を 15 と書きます。03 や 3 は 12 時間制を表し、通常は AM または PM を出力する PM と組み合わせて使います。