ToolHub
View All Posts

Unixタイムスタンプ詳細解説:フォーマット間の変換

Unixタイムスタンプは計算する中最も基本の概念の一つ,しかし多くの開発者とデータプロフェッショナル人士まだ正其感まで困惑。にかかわらずあなたはでデバッグ API 対応、分析するログファイルそれとも構築する调度系统,理解する Unixタイムスタンプの工作原理ならびにどのようにでフォーマットの間入行変換するすべては一项必备技できる。

Unixタイムスタンプとは?

Unixタイムスタンプ,もと呼ばれる epoch 時間または POSIX 時間,は自 1970 年 1 月 1 日 00:00:00 UTC もって来を経ての秒数(不を含むうるう秒)。この参照点と呼ばれる Unixエポック。タイムスタンプ保存するのために単个全体数,便于比較する、並べ替えると計算する時間差。

例えば,Unixタイムスタンプ 1700000000 正应 2023 年 11 月 14 日 22:13:20 UTC。する時間表示のために単个数値の简洁性させる Unixタイムスタンプになる操作する系统、データベースとプログラミング言語中時間表示の標準。

Unixタイムスタンプを使う理由

一般的なタイムスタンプフォーマット

異なるの系统使用異なるのタイムスタンプフォーマット。理解するこれらの差异に役立つあなたでそれ们の間正確に変換する。

フォーマット使用者
Unix 秒1700000000Linux、API、データベース
Unix ミリ秒1700000000000JavaScript、Java
Unix マイクロ秒1700000000000000Python、Go
ISO 86012023-11-14T22:13:20ZREST API、JSON
RFC 2822Tue, 14 Nov 2023 22:13:20 +0000メールヘッダー、HTTP

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

JavaScript で

JavaScript もってミリ秒表示タイムスタンプ。する必要があるする秒のために単位の Unixタイムスタンプ変換するのために JavaScript Date オブジェクト,先乘もって 1000。それから使用 toLocaleString() または toISOString() など方法フォーマットする出力する。

Python で

Python の datetime モジュール提供する fromtimestamp() 方法する Unixタイムスタンプ変換するのために datetime オブジェクト。Python まだを通じて datetime.fromtimestamp(ts, tz=timezone.utc) 方法支持するマイクロ秒精度のタイムスタンプ。

コマンドラインで

で Linux と macOS 上,date コマンドできる変換するタイムスタンプ。で Linux 上使用 date -d @1700000000 またはで macOS 上使用 date -r 1700000000 から Unixタイムスタンプ获取可読日付。

オンラインツールを使用

変換するタイムスタンプ最速の方法は使用オンラインコンバーター。貼り付けるあなたのタイムスタンプ,ツール即時表示する正应の日付と時間(多種類フォーマット)。無料のタイムスタンプコンバーター入行高速変換する。

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

反へ変換する——する可読日付変換するのために Unixタイムスタンプ——同样重する必要がある。これでへ API 送信する日付、保存する用户選択するの日付または调度未来イベント时よく必要とする。

JavaScript で,作成する Date オブジェクトかつ调用 getTime() 获取ミリ秒级タイムスタンプ,それから除もって 1000 得る秒。Python で,使用 datetime.timestamp() 直接获取 Unixタイムスタンプ。大多数のプログラミング言語提供する類似しての内置方法。

2038年問題

使用 32 位あり符号全体数保存する Unixタイムスタンプの系统するで 2038 年 1 月 19 日 03:14:07 UTC 溢出。届时,タイムスタンプする达まで 2147483647,即 32 位あり符号全体数の最大值,それから翻转のために负数,をもたらす日付表示するのために 1901 年。

この问题と呼ばれる 2038年問題または Y2K38,影響する旧系统と嵌入式设备。解决方案は使用 64 位全体数保存するタイムスタンプ,これする可表示の範囲拡張機能まで约 2920 亿年。大多数の现代操作する系统、データベースとプログラミング言語已トランジションまで 64 位タイムスタンプ。

開発者向けヒント:でデータベースと API 中保存するタイムスタンプ时常に使用 64 位全体数。もしあなた使用 JavaScript,请记住 Date.getTime() 戻るミリ秒そして非秒。と期望秒数の系统交互时除もって 1000。

タイムゾーンの処理

Unixタイムスタンプ常に使用 UTC,消を除いてタイムゾーン歧义。しかし,へ用户表示するタイムスタンプ変換する必要がありますまで其本にタイムゾーン。もって下が鍵です注意する事项:

よくある落とし穴

必要とするで Unixタイムスタンプと可読日付の間変換する?無料のタイムスタンプコンバーター。

タイムスタンプコンバーターを試す

よくある質問

とは Unixエポック?

Unixエポックは 1970 年 1 月 1 日 00:00:00 UTC。それとしてすべての Unixタイムスタンプ計算するの参照点。タイムスタンプ表示自该时刻もって来を経ての秒数。

Unixタイムスタンプできる用完か?

32 位あり符号全体数の Unixタイムスタンプするで 2038 年 1 月 19 日溢出,これと呼ばれる 2038年問題。使用 64 位全体数の系统で約 2920 亿年内できない面临此问题。大多数の现代系统已トランジションまで 64 位タイムスタンプ。

Unixタイムスタンプ受タイムゾーン影響するか?

できない,Unixタイムスタンプ常に使用 UTC,不受タイムゾーン影響する。同一タイムスタンプで全球代表同一时刻。タイムゾーン変換する仅でするタイムスタンプ表示するのために可読日付时发生。

タイムスタンプ中秒とミリ秒違いは何か?

標準 Unixタイムスタンプもって秒のために単位测量自纪元もって来の時間,そして JavaScript といくつかの API 使用ミリ秒。ミリ秒タイムスタンプは秒タイムスタンプの 1000 倍。例えば,1700000000 秒など于 1700000000000 ミリ秒。

うるう秒できる影響する Unixタイムスタンプか?

から技术上讲,Unixタイムスタンプ無視するうるう秒。毎一天すべてられると見なす恰良あり 86400 秒。これは以下を意味します時に挿入するうるう秒时,Unix 時間かもしれないできると UTC 略あり偏移,しかしで实践中これまれに引き起こす问题。