2012-04-13 14 views
7

Tengo la cantidad de minutos (es decir, 25, 120, 300, etc.) ingresados ​​por el usuario, y necesito mostrarlos en formato h: mm: ss. ¿Hay alguna función incorporada de ColdFusion que pueda hacer esto por mí, o alguien tiene alguna sugerencia sobre la forma más fácil de construir la cadena?ColdFusion - Crear tiempo a partir del número de minutos

+0

'' CreateTime (hora, minuto, segundo) '' y '' TimeFormat (tiempo) ''. – hofo

+0

Sí, lo vi, pero en la documentación indica que el parámetro de minutos debe estar entre 0 y 59, lo que no funciona para los ejemplos que di más arriba. Los usuarios pueden ingresar hasta 999 minutos. – shimmoril

Respuesta

13
<cfset totaltime = "#totalminutes\60#:#numberformat(totalminutes % 60, "00")#:00" /> 
+0

¡Perfecto! Debería haber pensado en la forma matemática yo mismo. – shimmoril

+0

Probablemente quiera poner 'int()' alrededor de '#totalminutes \ 60 #'. – charliegriefer

+5

La barra diagonal inversa es "división entera" por lo que da como resultado el resultado esperado. He pasado por alto esto antes cuando edito código de otros. –

9

Un poco tarde al juego, pero esto funciona bastante bien:

TimeFormat(CreateTimeSpan(0,0,minutes,0)) 
+2

Idea aseada. Solo inserte una máscara '" HH: mm: ss "' para que se muestre correctamente en los rangos superiores, es decir, 999 minutos. – Leigh

Cuestiones relacionadas