Преобразование длительности в секундах в часы, минуты и секунды на ActionScript
Интервалы, которые определены в секундах (например, длительность видео-ролика) удобно представлять в виде 00:00:00 (часы:минуты:секунды) для лучшей читабельности.
package crisp.routine
{
public class TimeUtils
{
public static function toMovieTime(input:Number, withHours:Boolean = true, roundSeconds:Boolean = true):String
{
if (roundSeconds)
{
input = Math.ceil(input); // На случай, если дробное
}
var hoursString:String = '00';
var minutesString:String = '00';
var secondsString:String = '00';
var hours:Number = 0;
var minutes:Number = 0;
var seconds:Number = 0;
hours = Math.floor(input / (60 * 60));
input = input % (60 * 60);
minutes = Math.floor(input / 60);
input = input % 60;
seconds = input;
hoursString = (hours >= 10) ? hours.toString() : '0' + hours.toString();
minutesString = (minutes >= 10) ? minutes.toString() : '0' + minutes.toString();
secondsString = (seconds >= 10) ? seconds.toString() : '0' + seconds.toString();
return (withHours ? hoursString + ':' : '') + minutesString + ':' + secondsString;
}
}
}
