¿Como transformar los días, horas y minutos acumulados, a formato de días, horas de 24 y minutos de 60 en C#?

publicado por: Anonymous

Por ejemplo, he sumado todos los días, horas y minutos:

int días=71;
int horas=90;
int minutos=653;

Lo que deseo, teniendo estos valores, mediante de algun calculo que se convertir en valores que son con horas no superando las 24, con minutos no superando los 60.
por ejemplo, si los minutos pasan los 60, los restantes acumularselo a la hora, y si la hora supera las 24, lo faltante pasárselos a los días.
obteniendo un resultado similar como esto:

int diaTransformado=75;
int horaTransformada=4;
int minutoTransformado= 53;

No se si me explique bien, pero necesito saber si hay alguna función o calculo que me lo permita hacer,cual y como sería?

solución

Lo que necesitas es un TimeSpan al que le pases los dias, horas minutos y segundos en su constructor

int días = 71;
int horas = 90;
int minutos = 653;

var ts = new TimeSpan(días, horas, minutos, 0);

int diaTransformado = ts.Days; // 75
int horaTransformada = ts.Hours; // 4
int minutoTransformado = ts.Minutes; // 53
Respondido por: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *