如何从prtime转换为.net datetime
时间:2020-03-05 18:51:28 来源:igfitidea点击:
我想将PRTime格式的数字(表示自1970年1月1日午夜(00:00:00)协调世界时(UTC)以来的微秒数)的PRTime格式转换为DateTime
。
请注意,这与通常的"自1970年1月1日以来的毫秒数"略有不同。
解决方案
回答
Dim prTimeInMillis as UInt64 prTimeInMillis = prTime/1000 dim prDateTime as new DateTime(1970, 1, 1) prDateTime = prDateTime.AddMilliseconds(prTimeInMillis)
回答
DateTime有一个采用Ticks(100纳秒)的构造函数。
因此,将prTime乘以10,然后将其添加到代表纪元时间的刻度数中,便可以进行转换。
private static DateTime epoch = new DateTime(1970, 1, 1); private static DateTime ConvertPrTime(long time) { return new DateTime(epoch.Ticks + (time*10), DateTimeKind.Utc); }