Conectar vía MCP →

Ingresar cálculo

Fórmula

Publicidad

Resultados

UTC Date & Time
2023-11-14 22:13:20
UTC (Tiempo Universal Coordinado)
Hora 22
Minuto 13
Segundo 20
Día de la semana (0=dom) 2
Días desde el 1970-01-01 19.675

¿Qué es un conversor de timestamp Unix?

Un timestamp Unix (también conocido como tiempo epoch o «hora Unix») es el número de segundos transcurridos desde las 00:00:00 UTC del 1 de enero de 1970, sin contar los segundos intercalares. Esta herramienta transforma ese único número entero en una fecha y hora UTC legibles para cualquier persona, incluido el día de la semana.

Recta numérica que cuenta los segundos desde la época de 1970 hasta una fecha posterior
Una marca de tiempo Unix cuenta los segundos transcurridos desde la época, la medianoche del 1 de enero de 1970 UTC.

Cómo usarlo

Pega o escribe un timestamp Unix en segundos (por ejemplo, 1700000000) y pulsa el botón. La calculadora te devuelve el año, el mes, el día, la hora, el minuto y el segundo en UTC, además del día de la semana y el número de días transcurridos desde el inicio del epoch.

La fórmula al detalle

Primero se separan los segundos: \(\text{días} = \left\lfloor \text{ts} / 86400 \right\rfloor\), y el resto nos da la hora del día.

$$\begin{gathered} \text{Days} = \left\lfloor \frac{\text{Timestamp}}{86400} \right\rfloor, \qquad s = \text{Timestamp} \bmod 86400 \\[1.5em] \text{where}\quad \left\{ \begin{aligned} \text{Hour} &= \left\lfloor \frac{s}{3600} \right\rfloor \\ \text{Minute} &= \left\lfloor \frac{s \bmod 3600}{60} \right\rfloor \\ \text{Second} &= s \bmod 60 \\ (\text{Y},\text{M},\text{D}) &= \text{civil}(\text{Days}) \end{aligned} \right. \end{gathered}$$

Después, ese recuento de días se convierte en una fecha del calendario civil mediante el conocido algoritmo inverso «days_from_civil» de Howard Hinnant, que desplaza el inicio del año a marzo para que el día bisiesto quede al final del año y así evitar casos especiales. El día de la semana se obtiene con \((\text{días} + 4) \bmod 7\), ya que el 1 de enero de 1970 fue jueves.

Marca de tiempo dividida en días completos y segundos restantes del día
Dividir la marca de tiempo entre 86400 separa los días completos de los segundos restantes del día.

Ejemplo resuelto

Para \(\text{ts} = 1{.}700{.}000{.}000\): \(\text{días} = 19675\) y \(\text{resto} = 72800\) segundos \(= 22{:}13{:}20\). El algoritmo de fecha civil convierte el día 19675 en 2023-11-14. Por tanto, el resultado es 2023-11-14 22:13:20 UTC.

Preguntas frecuentes

¿Tiene en cuenta las zonas horarias? No: el resultado siempre se expresa en UTC. Suma tu desfase horario local respecto a UTC para obtener la hora local.

¿Y los milisegundos? Introduce solo segundos. Si tienes un timestamp en milisegundos, divídelo primero entre 1000.

¿Por qué no contempla los segundos intercalares? Por definición, el propio tiempo Unix ignora los segundos intercalares, así que este conversor tampoco los considera.

Última actualización: