Как преобразовать тики в минуты?

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


person Community    schedule 22.12.2008    source источник


Ответы (6)


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

Итак, 28 000 000 000 * 1/10 000 000 = 2 800 сек. 2800 сек / 60 = 46,6666 мин

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

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

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

person Patrick Desjardins    schedule 22.12.2008
comment
LOL, кто не проголосовал за меня? И математический, и кодированный действительно дают мне 46 минут, а не эти 480 минут. - person Patrick Desjardins; 22.12.2008
comment
Может быть, кто-то проголосовал против вас за округление 46,6666 до 46? ;-) Нет, на самом деле, я по ошибке проголосовал за вас, я удалил голос против. Извините! - person Patrik Hägne; 22.12.2008
comment
На самом деле, для ясности, я не только снял голос "против". Я проголосовал за ваш исчерпывающий ответ. Сэр. - person Patrik Hägne; 22.12.2008
comment
Проголосовали за включение математической версии, а также версии TimeSpan. - person Rob Kennedy; 22.12.2008

Сделать можно так:

TimeSpan duration = new TimeSpan(tickCount)
double minutes = duration.TotalMinutes;
person thinkbeforecoding    schedule 22.12.2008
comment
лол - ты ответил на минуту раньше, чем Джон Скит, но его ответ набрал больше голосов !? - person Christian Payne; 09.02.2010

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

TimeSpan ts = TimeSpan.FromTicks(ticks);
double minutes = ts.TotalMinutes;
person Jon Skeet    schedule 22.12.2008

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

person Blounty    schedule 22.12.2008
comment
тиков / TimeSpan.TicksPerMinute - person Lars Truijens; 05.12.2011

TimeSpan.FromTicks (28000000000) .TotalMinutes;

person Mike Scott    schedule 22.12.2008

DateTime mydate = new Date(2012,3,2,5,2,0);
int minute = mydate/600000000;

вернет минуты от заданной даты (mydate) до текущего времени. надеюсь, что это поможет. ура

person zaheer ahmad    schedule 02.04.2013