我正在尝试在coldfusion中创建一个包含毫秒的时间戳。
我的问题是我找不到任何可以通过控制前导零来保持格式一致的代码。
这是我的格式:
<cfoutput>
<cfset todayDate = #Now()#>
<ul>
<li>#TimeFormat(todayDate, "HH:mm:ssl")# </li>
</ul>
</cfoutput>
我只需要像“HH:mm:ssll”或其他一些方法来确保我始终拥有9位数的时间戳。
答案 0 :(得分:8)
前导零的毫秒数?
<li>
#TimeFormat(todayDate, "HH:mm:ss")##NumberFormat(TimeFormat(todayDate, "l"),"000")#
</li>
仅供参考,l
最多包含3位数字。所以我不确定你的9位数限制。
答案 1 :(得分:8)
<cfscript>
createObject('java','java.text.SimpleDateFormat').init('yyyy-MM-dd HH:mm:ss.SSS Z').format(now());
</cfscript>
制作2010-07-19 11:40:14.051 EST
<cfscript>
createObject('java','java.text.SimpleDateFormat').init('HH:mm:ss.SSS').format(now());
</cfscript>
生成09:45:12.009
- 带前导零
答案 2 :(得分:2)
当你说:
时,你差不多了我只需要“HH:mm:ssll”......
只需添加第三个“l”即可拥有正确数量的占位符:
<cfoutput>
<cfset todayDate = #Now()#>
<ul>
<li>#TimeFormat(todayDate, "HH:mm:sslll")# </li>
</ul>
</cfoutput>
答案 3 :(得分:0)
<cfscript>
function getUniqueID() {
rightNow = now();
return (dateformat(rightNow,'yyyymmdd') & timeformat(rightNow,"HHmmss") &NumberFormat(TimeFormat(rightNow, "l"),"000") & RandRange(10000, 99999));
}
</cfscript>
<cfdump var="#getUniqueID()#">
只需分享我的代码,以防有人需要为任何目的创建唯一的时间戳。
对代码NumberFormat
部分的亨利的信用