将毫秒转换为小时:分钟:Coldfusion中的秒数?

时间:2014-07-09 14:09:38

标签: coldfusion

我从API获得一个名为duration_in_milliseconds的字段,是否有函数或方法将其转换为小时:分钟:秒以某种方式?

我看过,找不到任何解决方案。谢谢你的帮助吗?

3 个答案:

答案 0 :(得分:16)

@ craigster的答案非常有用,如果您只需要小时数以毫秒为单位的秒数。

如果你想要这三个,你需要做更多的算术。

例如,23小时59分55秒:

  (23 * 60 * 60 * 1000)
+ (59 * 60 * 1000)
+ (55 * 1000)
= 86395000 milliseconds

要将86395000转换回HH:MM:SS,您可以这样做:

<cfscript>
hours = int(duration_in_milliseconds \ (60 * 60 * 1000));
mins = (duration_in_milliseconds \ (60 * 1000)) mod 60;
secs = (duration_in_milliseconds \ 1000) mod 60;
</cfscript>

<cfoutput>#hours# #mins# #secs#</cfoutput>

答案 1 :(得分:3)

你所要做的只是分开它。

duration_in_milliseconds / 1000 =秒

duration_in_milliseconds / 60000 =分钟

(duration_in_milliseconds / 60000)/ 60 =小时

在Coldfusion Code中,它可能看起来像这样

如果你想要小时使用这一行

<cfset Hours = (LSParseNumber(duration_in_milliseconds) / 60000) / 60>

如果你想要Minutes使用这一行

<cfset Minutes= LSParseNumber(duration_in_milliseconds) / 60000>

如果你想让Seconds使用这一行

<cfset Seconds= LSParseNumber(duration_in_milliseconds) / 1000>

答案 2 :(得分:2)

你应该从这个开始:createTimeStruct(),并修改它以支持毫秒的掩码。

不要重新发明轮子。只需调整一个现有的轮子。