Как перевести тики в минуты?


92

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

Ответы:



118

Один тик представляет сто наносекунд или одну десятимиллионную долю секунды. ОТ 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 минут ...


LOL, кто не проголосовал за меня? И математические, и кодированные действительно дают мне 46 минут, а не эти 480 минут.
Патрик Дежарден,

1
Может быть, кто-то проголосовал за округление 46,6666 до 46? ;-) Нет, на самом деле, я по ошибке проголосовал за вас, я удалил голос против. Сожалею!
Патрик Хэгне,

1
На самом деле, для ясности, я не только снял голос "против". Я проголосовал за ваш исчерпывающий ответ. Сэр.
Патрик Хэгне,

5
Проголосовали за включение математической версии, а также версии TimeSpan.
Роб Кеннеди,


21

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

TimeSpan ts = TimeSpan.FromTicks(ticks);
double minutes = ts.TotalMinutes;



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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.