Skip to content

Instantly share code, notes, and snippets.

@wmaurer
Last active August 16, 2017 22:43
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wmaurer/0fea12ad03b41023f467 to your computer and use it in GitHub Desktop.
Save wmaurer/0fea12ad03b41023f467 to your computer and use it in GitHub Desktop.
Convert to and from Unix time
namespace Extensions
{
using System;
public static class DateTimeOffsetExtensions
{
public static DateTimeOffset FromUnixTimeSeconds(this long seconds)
{
var dateTimeOffset = new DateTimeOffset(new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc));
dateTimeOffset = dateTimeOffset.AddSeconds(seconds);
return dateTimeOffset;
}
public static long ToUnixTimeSeconds(this DateTimeOffset dateTimeOffset)
{
var unixStart = new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
var unixTimeStampInTicks = (dateTimeOffset.ToUniversalTime() - unixStart).Ticks;
return unixTimeStampInTicks / TimeSpan.TicksPerSecond;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment