Hay este código de ejemplo, pero luego comienza a hablar de problemas de milisegundos/nanosegundos.¿Cómo puedo convertir una marca de tiempo de Unix a DateTime y viceversa?
La misma pregunta es en MSDN, Seconds since the Unix epoch in C#.
Esto es lo que tengo hasta ahora:
public Double CreatedEpoch
{
get
{
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime();
TimeSpan span = (this.Created.ToLocalTime() - epoch);
return span.TotalSeconds;
}
set
{
DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime();
this.Created = epoch.AddSeconds(value);
}
}
La próxima ** ** NET 4.6 (para ser liberar más adelante en este año) introduce soporte para esto.. Consulte ['DateTimeOffset.FromUnixTimeSeconds'] (https://msdn.microsoft.com/en-us/library/system.datetimeoffset.fromunixtimeseconds.aspx) y [' DateTimeOffset.ToUnixTimeSeconds'] (https://msdn.microsoft. com/en-us/library/system.datetimeoffset.tounixtimeseconds.aspx) métodos. Hay métodos para milisegundos de tiempo Unix también. –