How do you convert epoch time in C#?

后端 未结 14 2319
野的像风
野的像风 2020-11-22 06:51

How do you convert Unix epoch time into real time in C#? (Epoch beginning 1/1/1970)

14条回答
  •  忘了有多久
    2020-11-22 07:23

    I presume that you mean Unix time, which is defined as the number of seconds since midnight (UTC) on 1st January 1970.

    private static readonly DateTime epoch = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
    
    public static DateTime FromUnixTime(long unixTime)
    {
        return epoch.AddSeconds(unixTime);
    }
    

    UPDATE 2020

    You can do this with DateTimeOffset

    DateTimeOffset dateTimeOffset = DateTimeOffset.FromUnixTimeSeconds(epochSeconds);
    DateTimeOffset dateTimeOffset2 = DateTimeOffset.FromUnixTimeMilliseconds(epochMilliseconds);
    

    And if you need the DateTime object instead of DateTimeOffset, then you can call the DateTime property

    DateTime dateTime = dateTimeOffset .DateTime;
    

提交回复
热议问题