2012-04-13 42 views
7

Tôi có số phút (ví dụ: 25, 120, 300, v.v.) do người dùng nhập và tôi cần hiển thị nó theo định dạng h: mm: ss. Có bất kỳ chức năng ColdFusion tích hợp nào có thể làm điều này cho tôi hay không ai có bất cứ đề xuất nào về cách dễ nhất để xây dựng chuỗi?ColdFusion - Tạo thời gian từ số phút

+0

'' CreateTime (giờ, phút, giây) '' và sau đó '' TIMEFORMAT (thời gian) ''. – hofo

+0

Vâng, tôi thấy điều đó, nhưng trong tài liệu, nó nêu rõ tham số phút phải nằm trong khoảng từ 0 đến 59, không hoạt động đối với các ví dụ mà tôi đã đưa ra ở trên. Người dùng có thể nhập tối đa 999 phút. – shimmoril

Trả lời

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

Hoàn hảo! Nên đã nghĩ về cách toán học bản thân mình. – shimmoril

+0

Có lẽ muốn đặt 'int()' xung quanh '#totalminutes \ 60 #'. – charliegriefer

+5

Dấu gạch chéo ngược là "phân chia số nguyên", do đó dẫn đến kết quả mong đợi. Tôi đã bỏ qua điều này trước khi chỉnh sửa mã người khác. –

9

Kinda muộn để các trò chơi, nhưng điều này hoạt động khá độc đáo:

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

Ý tưởng gọn gàng. Chỉ cần ném vào một '" HH: mm: ss "' mặt nạ để nó hiển thị chính xác cho các phạm vi trên tức là 999 phút. – Leigh

Các vấn đề liên quan