Pack Camo

Конвертер Unix Timestamp

Epoch-секунды, миллисекунды и даты — перевод в обе стороны в любом часовом поясе.

Всё выполняется локально — ничего не отправляется на сервер.

Сейчас
Секунды—
Миллисекунды—

Прочитано как Секунды.

Переведите epoch-время в понятную дату и обратно

Этот конвертер Unix timestamp превращает значение epoch в читаемую дату — в UTC, в вашем часовом поясе и в любом другом — и переводит дату и время обратно в timestamp. Он автоматически распознаёт секунды, миллисекунды, микросекунды и наносекунды, читает ISO 8601 и другие строки с датой и показывает результат в форматах ISO 8601, RFC 2822, HTTP-даты и относительного времени вроде «3 дня назад». Живые часы показывают текущее Unix-время, а пакетный режим конвертирует целый список сразу. Всё работает в вашем браузере.

Как перевести Unix timestamp

  1. 1Вставьте timestamp, например 1700000000 или 1700000000123, в Timestamp → дата. Единица определяется по количеству цифр; если догадка неверна, выберите её сами.
  2. 2Смотрите дату в UTC, в вашем часовом поясе и в поясе, выбранном на панели инструментов, а также в форматах ISO 8601, RFC 2822 и относительном. Нажмите значок копирования рядом с любым из них.
  3. 3Для обратного перевода откройте Дата → timestamp, выберите дату, время и часовой пояс и скопируйте секунды или миллисекунды.
  4. 4Чтобы перевести много значений, откройте Пакет, вставьте по одному в строке и скопируйте или скачайте результаты в CSV.

Что такое Unix timestamp?

Unix-время считает секунды с Unix epoch — 1 января 1970 года, 00:00:00 UTC. Это одно число без часового пояса, поэтому оно идеально для хранения и сравнения моментов: 1700000000 — это 14 ноября 2023 года, 22:13:20 UTC в любой точке мира, и от вашего местоположения зависит только отображение.

Моменты до 1970 года отрицательны — -86400 это 31 декабря 1969 года, — а Unix-время игнорирует високосные секунды: каждый день длится ровно 86 400 секунд, поэтому счёт остаётся простым, а високосная секунда поглощается часами, а не учитывается.

Секунды, миллисекунды, микросекунды и наносекунды

Автоопределение идёт по количеству цифр: до 11 — секунды, от 12 до 14 — миллисекунды, от 15 до 17 — микросекунды, больше — наносекунды. Это верно для любой даты между 1973 и 5138 годом. Для дат очень близких к 1970 году выберите единицу сами.

Секунды (10 цифр)
Классическое Unix-время, которое используют утилиты Unix, time() в PHP, int(time.time()) в Python, claims exp и iat в JWT и большинство баз данных. Пример: 1700000000.
Миллисекунды (13 цифр)
Используются в Date.now() в JavaScript, System.currentTimeMillis() в Java и многих JSON API. Пример: 1700000000123.
Микросекунды (16 цифр)
Используются внутри PostgreSQL, в точности datetime в Python и в некоторых системах логирования. Пример: 1700000000123456.
Наносекунды (19 цифр)
Используются в time.UnixNano() в Go, InfluxDB и Prometheus. Пример: 1700000000123456789 — здесь сохраняется точно, так как конвертер использует арифметику произвольной точности.

Форматы дат

Когда вы вставляете строку с датой, указанный в ней часовой пояс учитывается. Строка со временем, но без пояса, например 2024-03-10 08:30, читается как ваше местное время, а дата без времени, например 2024-03-10, — как полночь UTC (по правилам JavaScript), и конвертер сообщает, какой вариант применён.

ISO 8601 / RFC 3339
<code>2023-11-14T22:13:20.000Z</code> — формат JSON API и баз данных. Z означает UTC; иначе следует смещение, например <code>+05:30</code>. Правильно сортируется как текст.
RFC 2822
<code>Tue, 14 Nov 2023 22:13:20 +0000</code> — формат заголовка Date в электронной почте, также используется в RSS.
HTTP-дата
<code>Tue, 14 Nov 2023 22:13:20 GMT</code> — формат IMF-fixdate из RFC 9110, всегда в GMT, используется в заголовках Date, Expires и Last-Modified и в cookie.

Часовые пояса и летнее время

Список часовых поясов содержит все зоны IANA, известные вашему браузеру, например America/New_York, Europe/Berlin или Asia/Kolkata, с полной историей перехода на летнее время. При переводе даты в timestamp есть два сложных случая: весной местное время вроде 02:30 пропускается, когда часы переводят вперёд, а осенью один час повторяется дважды. Конвертер читает пропущенное время как момент после скачка, а повторяющееся — как первое вхождение, и сообщает, если сработал один из этих случаев.

Храните и передавайте timestamp или строки ISO 8601 в UTC, а в местный пояс переводите только для отображения. Для расписаний, повторяющихся в определённое время, воспользуйтесь генератором cron-выражений.

Проблема 2038 года

Системы, хранящие Unix-время как знаковое 32-битное целое, могут досчитать только до 2 147 483 647 — это 19 января 2038 года, 03:14:07 UTC. Через секунду значение переполняется в отрицательное и читается как декабрь 1901 года. Современные 64-битные системы в безопасности на миллиарды лет; проверьте встраиваемые устройства, старые форматы файлов и столбцы баз данных типа 32-битный INT. Вставьте 2147483647 выше, чтобы увидеть этот момент, или посмотрите битовое представление в конвертере систем счисления.

Часто задаваемые вопросы

Как перевести Unix timestamp в дату?
Вставьте его в Timestamp → дата. Конвертер определит, в секундах, миллисекундах, микросекундах или наносекундах значение, и покажет дату в UTC, в вашем местном времени и в любом выбранном часовом поясе.
Как узнать текущий Unix timestamp?
Живые часы вверху показывают его в секундах и миллисекундах. В коде: Math.floor(Date.now() / 1000) в JavaScript, int(time.time()) в Python, time() в PHP и date +%s в оболочке Unix.
Как понять, в секундах timestamp или в миллисекундах?
Посчитайте цифры. Текущий timestamp в секундах содержит 10 цифр, в миллисекундах — 13; в микросекундах — 16, в наносекундах — 19. Конвертер делает это за вас и показывает, какую единицу использовал.
Unix timestamp указан в UTC?
У Unix timestamp нет часового пояса: он считает секунды с полуночи UTC 1 января 1970 года, поэтому обозначает один и тот же момент везде. Часовой пояс появляется только при отображении в виде даты.
Что произойдёт в 2038 году?
19 января 2038 года в 03:14:07 UTC Unix-время превысит 2 147 483 647 — максимальное значение знакового 32-битного целого. Программы, хранящие время в 32 битах, переполнятся; 64-битное время это не затронет.
Можно ли перевести даты до 1970 года?
Да. У дат до epoch отрицательные timestamp; -86400 — это 31 декабря 1969 года, 00:00 UTC. Конвертер принимает отрицательные значения и выдаёт их для дат до 1970 года.
Учитывает ли Unix-время високосные секунды?
Нет. Unix-время считает каждый день равным ровно 86 400 секундам, поэтому високосные секунды не учитываются, и timestamp любой даты вычисляется простой арифметикой.
Отправляются ли данные на сервер?
Нет. Весь перевод, включая правила часовых поясов, выполняется в вашем браузере с помощью встроенной поддержки Intl.