Каков действительный способ преобразования C # между DateTime и временной меткой Unix? - PullRequest
0 голосов
/ 05 января 2012

У меня есть 2 функции для преобразования между .NET DateTime и Unix timestamp. Но я не уверен, что учел часовые пояса (параметра EPOCH и DateTime). Пожалуйста, помогите:

public class Util
{
    static DateTime EPOCH = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);

    public static DateTime ConvertUnixTimeStamp(ulong unixTimeStamp)
    {
        var dt = EPOCH.AddSeconds(unixTimeStamp);
        return dt;
    }

    public static double ConvertDatetimeToUnixTimeStamp(DateTime dt)
    {
        TimeSpan t = (dt - EPOCH);
        return Math.Floor(t.TotalSeconds);
    }
}

1 Ответ

0 голосов
/ 20 сентября 2013
    static DateTime EPOCH = new System.DateTime(1970, 1, 1, 0, 0, 0, 0);

    public static double ConvertDatetimeToUnixTimeStamp(DateTime date , int Time_Zone = 0)
    {
        TimeSpan The_Date = (date - EPOCH);
        return Math.Floor(The_Date.TotalSeconds) - (Time_Zone * 3600);
    }
...