как конфертировать из prtime в .net datetime - PullRequest
0 голосов
/ 11 сентября 2008

Я хочу преобразовать число в формате PRTime (64-разрядное целое число, представляющее количество микросекунд с полуночи (00:00:00) 1 января 1970 года (UTC) до DateTime.

Обратите внимание, что это немного отличается от обычного "количества миллисекунд с 01.01.1970"

Ответы [ 2 ]

2 голосов
/ 11 сентября 2008
Dim prTimeInMillis as UInt64
prTimeInMillis = prTime/1000

dim prDateTime as new DateTime(1970, 1, 1)
prDateTime = prDateTime.AddMilliseconds(prTimeInMillis)
0 голосов
/ 11 сентября 2008

DateTime имеет конструктор, который принимает тики (которые составляют 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);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...