37 lines
1.1 KiB
C#
37 lines
1.1 KiB
C#
using System;
|
||
|
||
namespace WZ
|
||
{
|
||
public class TimeUtils
|
||
{
|
||
#region 本地时间
|
||
public static long CurrentTimestamp()
|
||
{
|
||
return DateTimeOffset.UtcNow.ToUnixTimeSeconds();
|
||
}
|
||
// 获取当前本地时间的毫秒级时间戳
|
||
public static long GetLocalTimestamp()
|
||
{
|
||
DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local);
|
||
TimeSpan diff = GetNowDateTime() - origin;
|
||
return (long)diff.TotalMilliseconds;
|
||
}
|
||
|
||
public static DateTime TimestampToLocalDateTime(long timestamp)
|
||
{
|
||
// 以UTC时间为基准计算(避免时区转换问题)
|
||
DateTime origin = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Local);
|
||
DateTime utcDateTime = origin.AddMilliseconds(timestamp);
|
||
|
||
// 转换为本地时间
|
||
return utcDateTime.ToLocalTime();
|
||
}
|
||
|
||
public static DateTime GetNowDateTime()
|
||
{
|
||
return DateTime.Now;
|
||
}
|
||
|
||
#endregion
|
||
}
|
||
} |