C# 时间戳与DateTime互转

时间:2021-03-23 02:33:38
       #region 转换时间为unix时间戳
/// <summary>
/// 转换时间为unix时间戳
/// </summary>
/// <param name="date">需要传递UTC时间,避免时区误差,例:DataTime.UTCNow</param>
/// <returns></returns>
public static double ConvertToUnixOfTime(DateTime date)
{
DateTime origin
= new DateTime(1970, 1, 1, 0, 0, 0, 0);
TimeSpan diff
= date - origin;
return Math.Floor(diff.TotalSeconds);
}
#endregion

#region 时间戳转换为时间

public static DateTime StampToDateTime(string timeStamp)
{
DateTime dateTimeStart
= TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1));
long lTime = long.Parse(timeStamp + "0000000");
TimeSpan toNow
= new TimeSpan(lTime);
return dateTimeStart.Add(toNow);
}

#endregion