Как конвертировать тики в минуты? - PullRequest
87 голосов
/ 22 декабря 2008

У меня есть значение тиков 28000000000, которое должно быть 480 минут, но как я могу быть уверен? Как конвертировать значение тиков в минуты?

Ответы [ 7 ]

133 голосов
/ 22 декабря 2008
TimeSpan.FromTicks(28000000000).TotalMinutes;
113 голосов
/ 22 декабря 2008

Один тик представляет сто наносекунд или одну десятую миллионную секунды. ОТ MSDN.

То есть 28 000 000 000 * 1/10 000 000 = 2 800 сек. 2 800 с / 60 = 46,6666 мин

Или вы можете сделать это программно с помощью TimeSpan:

    static void Main()
    {
        TimeSpan ts = TimeSpan.FromTicks(28000000000);
        double minutesFromTs = ts.TotalMinutes;
        Console.WriteLine(minutesFromTs);
        Console.Read();
    }

Оба дают мне 46 минут, а не 480 минут ...

27 голосов
/ 22 декабря 2008

Вы можете сделать это так:

TimeSpan duration = new TimeSpan(tickCount)
double minutes = duration.TotalMinutes;
21 голосов
/ 22 декабря 2008

На мой взгляд, самый простой способ - использовать TimeSpan.FromTicks , а затем преобразовать это в минуты:

TimeSpan ts = TimeSpan.FromTicks(ticks);
double minutes = ts.TotalMinutes;
9 голосов
/ 22 декабря 2008

есть 600 миллионов тиков в минуту. ticksperminute

3 голосов
/ 22 декабря 2008

TimeSpan.FromTicks (28000000000) .TotalMinutes;

1 голос
/ 03 апреля 2013
DateTime mydate = new Date(2012,3,2,5,2,0);
int minute = mydate/600000000;

вернет минуты от заданной даты (mydate) до текущего времени. Надеемся, что help.cheers

...