没想到居然没找到官方自带这个功能的!根据原理,写了一个如下转换的:
DateTime dtStart = TimeZone.CurrentTimeZone.ToLocalTime(new DateTime(1970, 1, 1)); long lTime = long.Parse("1605744000000" + "0000"); TimeSpan deltaTime = new TimeSpan(lTime); DateTime dt = dtStart.Add(deltaTime);
代码第一行是1970年1月1日,也就是Unix stamp定义的起始。
第二行第一个参数是一个13位的时间戳,后面加上0000是省了后续的放大10000倍。