Unixタイムスタンプを日付に変換

UnixタイムスタンプをUTCおよびローカルの日付に変換するには、正確な時間変換のために当社のUnixタイムスタンプから日付への変換ツールを使用してください。

2件中5件の評価
協定世界時 (UTC)
あなたの現地タイムゾーン
Unixタイムスタンプを日付に変換

Unixタイムスタンプを日付に変換は、UnixタイムスタンプをUTCの日付と、利用中の端末のローカルタイムゾーンに対応する日付へ変換できる無料ツールです。

Unixタイムスタンプとは?

Unixタイムスタンプとは、Unixエポックと呼ばれる1970年1月1日00:00:00 UTCからの経過時間を数値で表したものです。システムはこの形式を使うことで、特定の時点をコンパクトに保存し、タイムゾーンに左右されず比較できます。

Unixタイムスタンプは一般に秒単位ですが、APIやプログラミング言語によってはミリ秒、マイクロ秒、ナノ秒が使われます。数値自体には単位が含まれないため、関連するドキュメントやデータスキーマで確認する必要があります。現在に近い日付では、10桁なら秒、13桁ならミリ秒であることが一般的です。ただし、桁数は判断材料にすぎず、正式な保証にはなりません。

サードパーティーAPIのレスポンスを読むとき、データベースのレコードやログを調べるとき、有効期限の計算をデバッグするときなどに、この変換がよく必要になります。設定ファイル内の有効化日時、キャッシュ期限、トークンの有効期限が読みやすい日付ではなく整数で記録されている場合は、デプロイ前の確認にも役立ちます。

図解:Unixタイムスタンプ1704067200が2024年1月1日UTCに変換される

Unixタイムスタンプを日付に変換するには?

Unixタイムスタンプに数値を入力し、変換された協定世界時 (UTC)とあなたの現地タイムゾーンの値を確認してください。UTCは変化しない基準値です。ローカルの結果には、同じ瞬間が現在のタイムゾーンのUTCオフセットに従って表示されます。

  1. 元の値がUnixタイムスタンプとして使われていることを確認します。
  2. 単位が秒なのか、ミリ秒などのより小さい単位なのかを確認します。
  3. システム間、ログ、APIデータを比較するときはUTCの結果を使います。
  4. その日時が時計やカレンダー上でどのように見えるかを確認するときは、ローカルの結果を使います。
digily.link のUnixタイムスタンプを日付に変換ツールと入力フォーム

可能な限り、整数だけを入力してください。空白、桁区切り、ラベル、コピー時に混入した句読点はタイムスタンプ形式の一部ではありません。たとえば、1,704,067,200は人が読みやすいように整形された表記ですが、一般的な機械可読形式は1704067200です。アクセント記号付きの文字やラテン文字以外の文字は、Unixタイムスタンプでは意味を持ちません。

空の入力、小数、区切り文字、極端に長い数値をこのツールが具体的にどう処理するかは明記されていません。返された日付を確実なものとして扱う前に、数値の前後にあるテキストを取り除き、単位を確認してください。

UTCとローカルの結果はどう見ればいい?

UTCはタイムゾーンに依存しない基準値、ローカル値は同じ瞬間を現在のタイムゾーンに合わせたものとして確認してください。2つの異なる出来事を表しているわけではありません。

日本のローカル時刻は日本標準時に従い、UTCより9時間進んでいます。現在は夏時間を採用していないため、UTCとの時差は年間を通して同じです。ただし、過去や将来のタイムゾーン規則がローカル表示に影響することもあり、特に日本以外の地域では注意が必要です。

想定した日付から数十年も離れた結果になった場合は、まず秒とミリ秒を取り違えていないか確認してください。ちょうど1時間または数時間ずれている場合は、タイムスタンプを変更するのではなく、タイムゾーンの前提を見直します。日付が1日ずれる場合は、UTCの時刻が午前0時に近く、ローカルのUTCオフセットによって前日または翌日に移っていることがよくあります。

文字、途中に含まれるラベル、空の値、受け取り側のシステムが対応する日付範囲を外れた数値は、無効な入力になる可能性があります。このツールの具体的なエラーメッセージや対応する数値範囲は公開されていません。結果が表示されない、または不自然な場合は、推測せず元のシステムと照合してください。

Unixタイムスタンプを日付に変換ツールが生成した結果の例

タイムスタンプの変換例

以下の例では、整数の秒単位で表したタイムスタンプを使います。

入力 0

UTCの出力 1 January 1970 at 00:00:00 UTC

ゼロはUnixエポックを表します。適用されるローカルのUTCオフセットがUTCと異なる地域では、ローカル表示も異なる場合があります。

入力 1704067200

UTCの出力 1 January 2024 at 00:00:00 UTC

日本では、この瞬間は2024年1月1日の午前9時です。同じタイムスタンプでも、UTCより西側のタイムゾーンでは2023年12月31日になることがあります。

負のタイムスタンプは、Unixエポックより前の時刻を表します。たとえば、-1は通常、エポックの1秒前、つまり31 December 1969 at 23:59:59 UTCを意味します。負の値に対応しているかどうかは、ソフトウェア環境、データベース、日付ライブラリによって異なります。

タイムスタンプを変換しなくてもよい場合は?

値を機械だけが読み取り、関係するすべてのシステムで単位とエポックが一致しているなら、変換は不要です。数値のまま保持すれば、後から誤ったロケールやタイムゾーンで解析される可能性のある日付形式を持ち込まずに済みます。

  • 時系列の順序を比較するだけなら、タイムスタンプを変換しないでください。同じ単位の数値タイムスタンプは、そのまま比較できます。
  • APIの仕様で許可されていない限り、必須の数値タイムスタンプを整形済みの日付に置き換えないでください。
  • データ処理の途中で、タイムスタンプの変換と再解析を繰り返さないでください。元の値を保持し、表示する段階で日付形式に整えます。
  • 内容が不明なレコードのデバッグ、有効期限の確認、インポート前のサードパーティーデータの点検では、読みやすい日付に変換してください。

読みやすい日付に変換できても、元の値が正しいとは限りません。入力ミスのあるタイムスタンプでも、完全に有効な日付になる場合があります。実際の業務上の出来事、ログの順序、元のドキュメントと照合してください。

よくある質問

13桁のタイムスタンプも使える?

現在に近い日付を表す13桁のタイムスタンプは、通常、秒ではなくミリ秒単位です。変換ツールが秒単位を前提としている場合は、まずミリ秒の値を1,000で割ってください。変換先が小数秒に対応している場合に限り、余りも保持します。このツールがミリ秒の入力をどう処理するかは明記されていないため、単位は別途確認してください。

Unixタイムスタンプにうるう秒は含まれる?

標準的なUnix時間では、うるう秒を独立した番号付きの秒として表しません。通常、各システムは1日を86,400 Unix秒とする連続的なカウントに時刻を対応させますが、時計の同期方法はプラットフォームによって異なることがあります。一般的なアプリケーションの日付では表示結果に影響することはほとんどありませんが、専門的な時刻計測では重要です。

同じタイムスタンプなら、どこでも同じ日付になる?

表している瞬間は世界中で同じですが、ローカルのカレンダー上の日付や時計の時刻はタイムゾーンによって異なります。UTCの午前0時に近いタイムスタンプは、ロンドン、ニューヨーク、東京で異なる日付として表示されることがあります。タイムスタンプはUTCで受け渡し、ローカル形式への変換は表示時にだけ行ってください。

表計算ソフトでタイムスタンプが変わるのはなぜ?

表計算ソフトでは、長い数値が指数表記で表示されたり、ソフト独自の日付シリアル値に対応する日付形式が適用されたりすることがあります。タイムスタンプの列はテキストとして、または精度が足りる場合は整数として読み込み、その後、明示的な変換式を使ってください。変換前に、末尾の桁が丸められていないことも確認します。

Unixタイムスタンプの2038年問題は影響する?

Unix秒を符号付き32ビット整数で保存するシステムでは、問題になる可能性があります。この形式で表せる正の範囲は2038年1月に終わります。現在の64ビットストレージなら、はるかに広い範囲を扱えますが、古いデータベース、組み込み機器、ライブラリでは、今も狭い範囲に制限される場合があります。デプロイ前に、その値を受け取るすべてのシステムについて、ストレージの型と使用する日付ライブラリを確認してください。

類似のツール

日付をUnixタイムスタンプに変換

日付をUnixタイムスタンプ形式に簡単に変換できる、当社の日付からUnixタイムスタンプへの変換ツールを使用してください。

4,899
1

人気のツール