Unix时间戳,从1970-1-1 0:0:0 UTC到现在的累计时间:秒数,毫秒数
public static DateTime UnixTimeStampStart = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);
DateTime的Ticks: 单位是 100 毫微秒,表示自 0001 年 1 月 1 日午夜 12:00:00 以来已经过的时间的以 100 毫微秒为间隔的间隔数。
可以通过转换DateTime到Ticks或秒,毫秒或自定义格式来生成时间戳。
转换DateTime为Ticks:
public static longDateTimeToTicks(DateTime time)
{long value =time.ToUniversalTime().Ticks;returnvalue;
}
转换Ticks为DateTime:
public static DateTime TicksToDateTime(longvalue)
{
DateTime time=TimeZoneInfo.ConvertTimeFromUtc(newDateTime(value),
TimeZoneInfo.Local);returntime;
}
注意:转换Ticks获得的DateTime时区为UTC,需要转换为当地时区。
DateTime转换为秒:
public static longDateTimeToTimeStamp(DateTime dateTime)
{return (long)(dateTime.ToUniversalTime() -UnixTimeSta