Unixタイムスタンプを日付に変換する方法と逆変換
Unixタイムスタンプを入力すればUTCとローカル日時へ、対応する日付文字列を入力すればUnixタイムスタンプへ変換できます。秒とミリ秒の判定基準、日付の対応形式、実行環境のタイムゾーンに注意してください。
Unixタイムスタンプと日付を相互変換する
Unixタイムスタンプは、日時を数値で表す形式です。このツールでは、タイムスタンプからUTCと実行環境のローカル日時へ変換したり、対応する日付文字列からUnixタイムスタンプを作成したりできます。ログ、APIの値、データ移行用の日時を確認するときに役立ちます。入力が数値でも文字列でも、タイムスタンプから日付への変換では前後の空白を取り除いて処理されます。
変換の手順
- タイムスタンプを日付にする場合は、通常の変換モードを選択し、入力欄に整数または文字列のタイムスタンプを入力します。小数を含む文字列も入力できます。
- 日付をタイムスタンプにする場合は、日付からタイムスタンプへ変換するモードを選び、対応する形式で入力します。認識される形式は、
2024-01-31T12:30:00、末尾にZを付けた形式、2024-01-31 12:30:00、日付だけの形式、31.01.2024 12:30:00、31.01.2024、01/31/2024 12:30:00、01/31/2024、31 January 2024、31 Jan 2024、2024/01/31です。 - 変換を実行し、成功した結果を確認します。タイムスタンプを入力した場合は、UTCとローカルの日時に加えて、日付、時刻、曜日、秒、ミリ秒などの表示が返されます。
結果の読み方と注意点
タイムスタンプは、1,000,000,000,000より大きい値ならミリ秒として扱われ、1,000で割ってから変換されます。それ以外の値は秒として扱われます。入力した値の桁数を確認すると、秒とミリ秒の取り違えを見つけやすくなります。
日付から作成されるタイムスタンプは、入力にタイムゾーン情報がない場合、実行環境のローカルタイムゾーンを使って計算されます。タイムスタンプから得られるローカル日時も実行環境に依存します。末尾のZは認識される形式の一部ですが、タイムゾーンを指定した日時として解析するものではありません。空欄、無効なタイムスタンプ、対応する形式に当てはまらない日付は、成功した変換結果になりません。
使用例
ログに記録された秒単位の数値を、確認しやすい日時の表示へ変換します。
タイムスタンプとして1700000000を入力し、通常のタイムスタンプから日付への変換を実行します。
UTC日時、ローカル日時、日付、時刻、曜日、秒、ミリ秒などの表示を確認できます。
制限事項
- ローカル日時と日付から作成されるタイムスタンプは実行環境のタイムゾーンに依存します。また、日付入力は認識される形式に限られ、タイムゾーン付きの日付入力として扱われるとは限りません。
よくある間違い
- 秒の値をミリ秒として入力すると、桁が大きくずれた日時になります。入力値が1,000,000,000,000より大きいかを確認し、ミリ秒ならそのまま、秒なら秒の値として入力してください。
よくある質問
秒とミリ秒はどのように判定されますか?
1,000,000,000,000より大きいタイムスタンプはミリ秒として扱われ、それ以外は秒として扱われます。入力値の桁数を確認してください。
どのような日付形式を入力できますか?
対応形式に当てはまる文字列なら変換できます。ISO形式、日付と時刻を空白で区切る形式、日付だけの形式、ドット区切り、スラッシュ区切り、英語の月名を使う形式などが対象です。任意の形式が認識されるわけではありません。
変換結果のローカル時刻はどのタイムゾーンですか?
タイムスタンプから表示されるローカル日時と、タイムスタンプへ変換するときの日付の扱いは、実行環境のタイムゾーンに依存します。入力した日付文字列だけで、普遍的なタイムゾーンが決まるわけではありません。