Archivo por días: 7 abril, 2015

Convertir UNIX TimeStamp a DateTime

Es posible que en alguna ocasión en tu vida de programador te hayas encontrado con valores de fecha que aparentemente no lo son, pueden ser generalmente valores enteros muy grandes como por ejemplo 1415463675.

En mi experiencia lo que puedes estar viendo es un valor almacenado en un formato Excel o un UNIX timestamp.

Para convertir UNIX TimeStamp a DateTime en C# .Net podremos utilizar lo siguiente:

public static DateTime UnixTimeStampToDateTime( double unixTimeStamp )
{
    // Unix timestamp son los segundos pasados después de una fecha establecida, por lo general unix utiliza esta fecha 
    System.DateTime dtDateTime = new DateTime(1970,1,1,0,0,0,0,System.DateTimeKind.Utc);
    dtDateTime = dtDateTime.AddSeconds( unixTimeStamp ).ToLocalTime();
    return dtDateTime;
}

De esta manara podrás ver que el valor 1415463675 se corresponde a la fecha 11/08/2014 / 4:21pm (UTC).