C#获取时间戳与转换
获取时间戳(秒)
(DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000000
获取时间戳(毫秒)
(DateTime.Now.ToUniversalTime().Ticks - 621355968000000000) / 10000
生成时间戳方法
private long ConvertDateTimeInt(DateTime time)
{
return (time.ToUniversalTime().Ticks - 621355968000000000) / 10000000;
}
毫秒级时间戳转为时间
public static DateTime IntToDateTime(long timestamp)
{
if (timestamp.Equals(0))
{
return DateTime.Now;
}
return TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)).AddSeconds(timestamp);
}
秒级时间戳转时间
public static DateTime IntToDateTime(long timestamp)
{
if (timestamp.Equals(0))
{
return DateTime.Now;
}
return TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)).AddSeconds(timestamp);
}
十秒级时间戳转时间
public static DateTime IntToDateTime_(long timestamp)
{
var start = new DateTime(1970, 1, 1, 8, 0, 0, DateTimeKind.Utc);
return start.AddSeconds(timestamp);
}