Duplicar posible:
How to convert UNIX timestamp to DateTime and vice versa?cómo generar una marca de hora UTC Unix en C#
¿Cómo puedo crear una marca de tiempo Unix en C#? (Por ejemplo 10/10/2012 14:00:00 -> 1349877600)
Duplicar posible:
How to convert UNIX timestamp to DateTime and vice versa?cómo generar una marca de hora UTC Unix en C#
¿Cómo puedo crear una marca de tiempo Unix en C#? (Por ejemplo 10/10/2012 14:00:00 -> 1349877600)
private double ConvertToTimestamp(DateTime value)
{
//create Timespan by subtracting the value provided from
//the Unix Epoch
TimeSpan span = (value - new DateTime(1970, 1, 1, 0, 0, 0, 0).ToLocalTime());
//return the total seconds (which is a UNIX timestamp)
return (double)span.TotalSeconds;
}
Usted señor ha salvado mi cordura. –
¿Por qué "doble"? ¿No sería un entero largo un mejor modelo por segundos? (¿Y más en consonancia con la representación de Unix?) –
@ WilliamT.Mallard Si quiere un 'long', sugiero' return span.Ticks/TimeSpan.TicksPerSecond; '. Sin embargo, desde 2015, el BCL tiene un método incorporado, '((DateTimeOffset) value) .ToUnixTimeSeconds()'. –
DateTime.UtcNow - new DateTime(2012,10,10,14,0,0)).TotalSeconds
A) Te estás perdiendo una paren, supongo que debería ir antes de 'DateTime.UtcNow', ¿sí? ¿Y no debería 'nuevo DateTime (2012,10,10,14,0,0)' ser la época de Unix 1/1/1970? –
divertido ver a una pregunta marcado como duplicado ... varias veces. :) –