Saltar al contenido

cómo convertir la marca de tiempo de Unix a fecha y hora

Después de buscar en diferentes repositorios y páginas webs al terminar hemos dado con la respuesta que te mostraremos aquí.

Solución:

Su código funciona bien, tal como está. Aquí hay un violín.

Todos los que te dicen que uses AddSeconds Está Mal. El número que nos está dando está claramente en milisegundos. Hay 31.536.000 segundos en un año. 1415115303410 dividido por 31536000 es 4487. No han pasado 4487 años desde el 1/1/1970.

use AddSeconds en lugar de AddMilliseconds

 private static DateTime UnixTimeStampToDateTime(long unixTimeStamp) 
 
    System.DateTime dtDateTime = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);
    dtDateTime = dtDateTime.AddSeconds(unixTimeStamp);
    return dtDateTime;
 

Solo usa DateTimeOffset

DateTimeOffset date = DateTimeOffset.FromUnixTimeSeconds(1415115303410)

Tienes la opción de sustentar nuestra faena ejecutando un comentario y dejando una puntuación te lo agradecemos.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *