¿Cómo convierto ticks en minutos?


92

Tengo un valor de ticks de 28000000000 que debería ser de 480 minutos, pero ¿cómo puedo estar seguro? ¿Cómo convierto un valor de ticks a minutos?

Respuestas:



117

Una sola marca representa cien nanosegundos o una diez millonésima de segundo. DESDE MSDN.

Entonces 28 000 000 000 * 1/10 000 000 = 2800 seg. 2800 segundos / 60 = 46,6666 minutos

O puede hacerlo de manera programática con TimeSpan:

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

Ambos me dan 46 min y no 480 min ...


lol, ¿quién me votó en contra? Tanto el matemático como el codificado realmente me dan 46 minutos y no estos 480 minutos.
Patrick Desjardins

1
¿Quizás alguien lo votó en contra por redondear 46,6666 a 46? ;-) No, de hecho, te había votado en contra por error, ahora he eliminado el voto en contra. ¡Lo siento!
Patrik Hägne

1
En realidad, para que quede claro, no solo eliminé el voto en contra. He votado a favor de su respuesta completa. Señor.
Patrik Hägne

5
Votó a favor de incluir la versión matemática y la versión TimeSpan.
Rob Kennedy

29

Puedes hacerlo de esta manera:

TimeSpan duration = new TimeSpan(tickCount)
double minutes = duration.TotalMinutes;

3
jajaja - respondiste un minuto antes que Jon Skeet, ¡pero su respuesta tiene más votos !?
Christian Payne

21

La forma más clara en mi opinión es usar TimeSpan.FromTicks y luego convertir eso en minutos:

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



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

devolverá los minutos de la fecha dada (mydate) a la hora actual. Espero que esto ayude.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.