Go to English Blog

Formatando a duração de uma música em milisegundos

Leia em menos de um minuto

Imagine que, por algum motivo, você precise formatar a duração de uma música de milisegundos para "0:00". Com o Ruby é moleza:

module Duration
  def to_duration
    total_secs = self / 1000.0
    mins = (total_secs / 60.0).to_i
    secs = (total_secs - mins*60).to_i
    "%d:%02d" % [mins, secs]
  end
end

class Fixnum; include Duration; end
class Bignum; include Duration; end
class Float; include Duration; end

puts (68*1000).to_duration  # 1:08
puts (120*1000).to_duration # 2:00
puts (235*1000).to_duration # 3:55

Só não me pergunte para que precisei disso! :)