| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960 | using System;using System.Globalization;namespace GFGGame{    public class LauncherTimeUtil    {        private static DateTime dt = new DateTime(1970, 1, 1, 0, 0, 0, DateTimeKind.Utc);        private static readonly string[] Formats =        {            "HH:mm",            "'['yyyy']['M']['dd']'",            "'['yyyy']['MM']['d']'",            "'['yyyy']['M']['d']'",            "'['yyyy']['MM']['dd']'",            "'['yyyy']['MM']['dd']['HH:mm']'",            "'['yyyy']['MM']['dd']['H:mm']'",            "'['yyyy']['M']['dd']['HH:mm']'",            "'['yyyy']['M']['dd']['H:mm']'",            "'['yyyy']['MM']['d']['HH:mm']'",            "'['yyyy']['MM']['d']['H:mm']'",            "'['yyyy']['M']['d']['HH:mm']'",            "'['yyyy']['M']['d']['H:mm']'",            "'['yyyy']['MM']['dd']['HH:mm:ss']'",            "'['yyyy']['M']['dd']['HH:mm:ss']'",            "'['yyyy']['MM']['d']['HH:mm:ss']'",            "'['yyyy']['M']['d']['HH:mm:ss']'",        };        private static DateTime GetDateTime(string timeStr)        {            if (DateTime.TryParseExact(timeStr, Formats, null, DateTimeStyles.None, out var result))            {                return result;            }            throw new FormatException("Invalid date format");        }        //转换成时间戳,单位毫秒        public static long GetTimestamp(string timeStr)        {            var dateTime = GetDateTime(timeStr);            return Transition(dateTime);        }        // 获取当前时间的时间戳,单位毫秒        public static long GetCurrentTimestamp()        {            DateTime now = DateTime.UtcNow;            return Transition(now);        }        private static long Transition(DateTime d)        {            return (d.Ticks - dt.Ticks) / 10000;        }    }}
 |