2012-04-13 47 views
7

我有用户输入的分钟数(即25,120,300等),我需要以h:mm:ss格式显示它。是否有任何内置的ColdFusion函数可以为我执行此操作,或者是否有人对构建字符串的最简单方法有任何建议?ColdFusion - 从分钟数创建时间

+0

''CreateTime(小时,分,秒)''然后''时间格式(时间)''。 – hofo 2012-04-13 19:16:53

+0

是的,我看到了,但在文档中它指出分钟参数必须在0到59之间,这对于我上面给出的示例不起作用。用户最多可以输入999分钟。 – shimmoril 2012-04-13 19:22:30

回答

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

完美!应该想到自己的数学方式。 – shimmoril 2012-04-13 19:30:12

+0

可能要在'#totalminutes \ 60#'周围放置一个'int()'。 – charliegriefer 2012-04-13 19:31:12

+5

反斜杠是“整数除法”,因此会产生预期结果。编辑其他代码之前,我忽略了这一点。 – 2012-04-13 19:33:13

9

有点儿晚了比赛,但这个工程相当漂亮:

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

干净的想法。只需在'HH:mm:ss'掩码中输入正确值即可显示999分钟的上限。 – Leigh 2012-04-20 03:19:32