Implements a simple set of helpers to handle Epoch/Unix timestamps in .NET
There are a few ways to create a Epoch
Will return the timestamp as if it was UTC.
This method will return the current timestamp in seconds from the UnixTime-epoch.
This method will always return the timestamp as if it was UTC.
This method will return the beginning of the UnixTime-epoch (1 January 1970 00:00:00 UTC).
This method will always return the timestamp as if it was UTC. The year 2038 problem (also known as Y2038, Y2K38, or the Epochalypse) is a time formatting bug in computer systems with representing times after 03:14:07 UTC on 19 January 2038.
This method will return the provided value (int
) as an UnixTime-epoch, we do not recommend this way since it will overflow after 03:14:07 UTC on 19 January 2038.
This method will always return the timestamp as if it was UTC.
This method will return the provided value (long
) as an UnixTime-epoch.
Will return the timestamp as if the DateTime was in UTC.
This method will return the provided value (DateTime
) as an UnixTime-epoch.
var tp = TimeProvider.System;
var epoch = tp.Now();
var tp = TimeProvider.Utc;
var epoch = tp.Now();
var timezone = TimeZoneInfo.FindSystemTimeZoneById("W. Europe Standard Time");
var tp = TimeProvider.Timezone(timezone);
var epoch = tp.Now();
We've provided a few ways to simplify the conversion of types that can be converted to a UnixTime-epoch value, such as int
, long
, and DateTime
.
This method will always return the timestamp as if it was UTC.
This method will return the provided value (DateTime
) as an UnixTime-epoch.
This method will always return the timestamp as if it was UTC.
This method will return the provided value (DateTime
) with the provided DateTimeKind
(Local
, Unspecified
, and Utc
) taken into account as an UnixTime-epoch.
This method will convert the provided value (DateTime
) to an UnixTime-epoch adjusted for provided time zone.
This method will return the original Epoch but with the timespan adjusted to the beginning of the current minute.
This method will return the original Epoch but with the timespan adjusted to the end of the current minute.
This method will return the original Epoch but with the timespan adjusted to the beginning of the current hour.
This method will return the original Epoch but with the timespan adjusted to the end of the current hour.
This method will return the original Epoch but with the timespan adjusted to the beginning of the current day.
This method will return the original Epoch but with the timespan adjusted to the end of the current day.
This method will return the original Epoch but with the timespan adjusted to the beginning of the current month.
This method will return the original Epoch but with the timespan adjusted to the end of the current month.
This method will return the original Epoch but with the timespan adjusted to the beginning of the current year.
This method will return the original Epoch but with the timespan adjusted to the end of the current year.
This method will convert the provided Epoch to a DateTime
.
This method will return the current Epoch converted to a time zone specific adjusted Epoch.
The year 2038 problem (also known as Y2038, Y2K38, or the Epochalypse) is a time formatting bug in computer systems with representing times after 03:14:07 UTC on 19 January 2038.
This method will return the provided value (int
) as an UnixTime-epoch, we do not recommend this way since it will overflow after 03:14:07 UTC on 19 January 2038.
This method will return the provided value (long
) as an UnixTime-epoch.