c#utc时间戳

游戏里礼包、月卡之类的经常用到utc时间。

/// <summary>
/// 获取utc时间
/// </summary>
/// <returns></returns>
public static long GetUTCTime()
{
    TimeSpan ts = DateTime.UtcNow - new DateTime(1970, 1, 1, 0, 0, 0, 0);
    return Convert.ToInt64(ts.TotalSeconds);
}

/// <summary>
/// 将当前时间戳转换至Datetime
/// </summary>
/// <param name="timeStamp"></param>
/// <returns></returns>
public static DateTime ConvertUTCToDateTime(long timeStamp)
{
    DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); // 当地时区
    DateTime dt = startTime.AddSeconds(timeStamp);
    return dt;
}

/// <summary>
/// 把datetime转utc时间戳
/// </summary>
/// <param name="time"></param>
/// <returns></returns>
public static int ConvertDateTimeToUTC(DateTime time)
{
    double intResult = 0;
    DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
    intResult = (time - startTime).TotalSeconds;
    return (int)intResult;
}

 

 

posted on 2019-09-25 15:35  炼金师  阅读(802)  评论(0)    收藏  举报

导航