Метод DateTimeOffset.ToUnixTimeSeconds
Метод ToUnixTimeSeconds считает
секунды от 1970-01-01 UTC.
Дробная часть миллисекунд отбрасывается,
не округляется. Обратная операция -
FromUnixTimeSeconds.
Синтаксис
long seconds = dateTimeOffset.ToUnixTimeSeconds();
Пример
Давайте получим секунды для
2020-01-02 UTC:
using System;
class Program
{
static void Main()
{
var dto = new DateTimeOffset(
2020, 1, 2, 0, 0, 0, TimeSpan.Zero);
long res = dto.ToUnixTimeSeconds();
Console.WriteLine(res);
}
}
Результат выполнения кода:
1577923200
Пример
Давайте покажем отбрасывание миллисекунд:
using System;
class Program
{
static void Main()
{
var dto = new DateTimeOffset(
2020, 1, 2, 0, 0, 0, 500, TimeSpan.Zero);
long sec = dto.ToUnixTimeSeconds();
long ms = dto.ToUnixTimeMilliseconds();
bool res = sec * 1000 != ms;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Пример
Давайте проверим, что эпоха даёт 0:
using System;
class Program
{
static void Main()
{
var dto = DateTimeOffset.FromUnixTimeSeconds(0);
long res = dto.ToUnixTimeSeconds();
Console.WriteLine(res);
}
}
Результат выполнения кода:
0
Смотрите также
-
FromUnixTimeSeconds,
обратное преобразование -
ToUnixTimeMilliseconds,
миллисекунды Unix -
UtcNow,
текущие секунды -
DateTime.ToString,
календарный вывод