ツール
PR

エポックミリ秒・エポック秒⇔日時 自動変換ツール|13桁/10桁の違い・JavaScript・Excel対応

saratogax
記事内に商品プロモーションを含む場合があります

「エポックミリ秒」または「日時」を入力して変換したい方のボタンをクリックしてください。
(「エポック秒」から変換する場合は末尾に「000」を付与)

エポックミリ秒(UNIX時間ミリ秒)を、わかりやすく日付や時刻に変換できるツールです。

上の変換ツールにエポックミリ秒を入力すれば、即座に日時を取得できます。

逆に日時からミリ秒に変換することも可能です。

エポックミリ秒とは?

エポックミリ秒(epoch milliseconds)とは、1970年1月1日 00:00:00 UTC を基準時刻(エポック)として、そこからの経過時間を「ミリ秒単位」で表した数値です。

  • 秒単位のエポック秒1640995200 のような10桁の数値
  • ミリ秒単位のエポックミリ秒1640995200000 のような13桁の数値
エポックミリ秒(13桁)UTC日時JST(+9h)
01970-01-01 00:00:001970-01-01 09:00:00
17000000000002023-11-14 22:13:202023-11-15 07:13:20
※表は横スクロールできます

エポック秒(UNIX時間)とは?

エポック秒(epoch seconds)は、エポックミリ秒と同じく 1970年1月1日 00:00:00 UTC を基準とした経過時間ですが、単位が「秒」となるため 10桁前後の数値 になります。

UNIX/Linux 系のコマンドや、古い API・データベースのタイムスタンプカラムなどで主流の表現で、「UNIX時間(UNIX time)」「UNIXタイムスタンプ」とも呼ばれます。

エポック秒(10桁)UTC日時JST(+9h)
01970-01-01 00:00:001970-01-01 09:00:00
17000000002023-11-14 22:13:202023-11-15 07:13:20
17356896002025-01-01 00:00:002025-01-01 09:00:00
※表は横スクロールできます

エポック秒を上の変換ツールで使う方法

このページの変換ツールは「エポックミリ秒(13桁)」を前提に動作するため、10桁のエポック秒を変換したい場合は 末尾に「000」を追加 してから入力してください。

例:17000000001700000000000 として入力

エポック秒を取得・確認する手段

  • UNIX / Linux / Mac ターミナルdate +%s
  • JavaScriptMath.floor(Date.now() / 1000)(Date.now() はミリ秒なので 1000 で割る)
  • Pythonint(time.time())
  • MySQLSELECT UNIX_TIMESTAMP();

エポック秒(秒) と エポックミリ秒(ミリ秒) の使い分け

どちらを使うべきか迷ったときの目安は次のとおりです。

  • エポック秒(10桁):秒精度で十分なケース、UNIX 系コマンドの戻り値、JWT トークンの exp クレーム、Linux のファイル更新日時など
  • エポックミリ秒(13桁):ブラウザ JavaScript の Date.now()、Java の System.currentTimeMillis()、ログ解析などミリ秒精度が必要なケース

エポックミリ秒とエポック秒の違い

項目エポック秒エポックミリ秒
単位ミリ秒
桁数10桁程度13桁程度
精度秒までミリ秒まで
用途UNIX系システム・古いAPIJavaScript・一部API
※表は横スクロールできます

変換が必要になるケース

  • プログラミング言語やAPIの仕様差
    例:JavaScriptではDate.now()がミリ秒を返すが、UNIXコマンドdate +%sは秒を返す
  • ログ解析
    サーバーログやアクセス解析ツールがミリ秒単位で記録する場合
  • データベース処理
    タイムスタンプカラムの単位が異なる場合の変換

JavaScriptでのエポックミリ秒変換方法

// 日時 → エポックミリ秒
const ms = new Date("2025-08-08T10:00:00Z").getTime();
console.log(ms); // 1754647200000

// エポックミリ秒 → 日時
const date = new Date(1754647200000);
console.log(date.toISOString()); // 2025-08-08T10:00:00.000Z

ISO 8601 / RFC3339「Zulu」形式とエポックミリ秒の相互変換

近年の Web API では、エポック値ではなく ISO 8601 / RFC3339 形式の日付文字列を返すケースが増えています。たとえば Google Play Billing の purchases.subscriptionsv2 や GitHub API は、末尾に Z が付く UTC 表記を採用しています。

末尾の Z は「Zulu time」の略で、UTC と同義です。タイムゾーン情報を文字列に含むため、サーバー間でやり取りしても解釈ズレが起きにくいのが利点です。

表記例精度
2025-08-08T10:00:00Z秒精度
2025-08-08T10:00:00.045Zミリ秒精度
2025-08-08T10:00:00.045123456Zナノ秒精度(RFC3339 仕様の最大)
※表は横スクロールできます

JavaScript での相互変換

JavaScript の Date は ISO 8601 文字列を直接パースでき、toISOString() で Zulu 形式に変換できるため、追加ライブラリは不要です。

// Zulu 形式 → エポックミリ秒
const ms = new Date("2025-08-08T10:00:00Z").getTime();
console.log(ms); // 1754647200000

// エポックミリ秒 → Zulu 形式
const zulu = new Date(1754647200000).toISOString();
console.log(zulu); // 2025-08-08T10:00:00.000Z

Kotlin / Java での相互変換

JVM 系言語(Kotlin / Java)では java.time.Instant.parse() で Zulu 形式の文字列を Instant オブジェクトに変換でき、toEpochMilli() でエポックミリ秒を取得できます。逆方向は Instant.ofEpochMilli()toString() です。

import java.time.Instant

// Zulu 形式 → エポックミリ秒
val ms = Instant.parse("2025-08-08T10:00:00Z").toEpochMilli()
// 1754647200000

// エポックミリ秒 → Zulu 形式
val zulu = Instant.ofEpochMilli(1754647200000).toString()
// 2025-08-08T10:00:00Z

Google Play Billing の purchases.subscriptionsv2 レスポンスの日時項目を Kotlin で実際に扱う際の詳細手順は、以下の記事で解説しています。

あわせて読みたい
【Kotlin】RFC3339 UTC「Zulu」形式とエポックミリ秒の相互変換|Google Play Billing 対応
【Kotlin】RFC3339 UTC「Zulu」形式とエポックミリ秒の相互変換|Google Play Billing 対応

Excelでの変換方法

Excelの日付シリアル値は「1900年1月1日」を基準にしており、エポックとは基準日が異なります。

エポックミリ秒 → Excel日付

※A1にエポックミリ秒が入っている場合

= (A1 / 1000 / 86400) + DATE(1970,1,1)

Excel日付 → エポックミリ秒

= (A1 - DATE(1970,1,1)) * 86400 * 1000

UTCとタイムゾーンの注意点

  • エポック時間は常にUTC基準
  • 日本時間(JST)は+9時間
  • 変換時にタイムゾーンを意識しないと、日付や時刻がずれることがある

まとめ

  • エポックミリ秒は1970年1月1日からの経過時間をミリ秒単位で表したもの
  • 秒単位の「エポック秒」と混同しないよう注意
  • JavaScriptやExcelなど、環境に応じて変換方法は異なる
  • 上部の変換ツールを使えば、複雑な計算なしに即変換可能

💡 ブックマークしておくと、ログ解析や開発作業でいつでも変換できて便利です。

あわせて読みたい
Pythonのエポックミリ秒入門|取得・変換コードと注意点
Pythonのエポックミリ秒入門|取得・変換コードと注意点
あわせて読みたい
JavaScriptのmomentでエポックミリ秒を取得する
JavaScriptのmomentでエポックミリ秒を取得する
ABOUT ME
saratoga
saratoga
フリーランスエンジニア
仕事にも趣味にも IT を駆使するフリーランスエンジニア。技術的な TIPS や日々の生活の中で深堀りしてみたくなったことを備忘録として残していきます。
記事URLをコピーしました