AS3で時間(秒)の表示フォーマット

こんばんわ。 ハスキーボイスiyamaです。 今日は風邪のため早く帰ったのに、電車が事故で運転再開見込みなしとなりました。 ぜんぜんお家に着きません。

数字(秒) → 時間表示(h:mm:ss)にフォーマットする覚え書きです。

昔は毎回いちいちやってたけど、面倒なのでfunctionに。。

環境

  • ActionScript 3.0
1
2
3
4
5
6
7
8
9
10
11
12
private function _timeFormat(time:Number = 0) {
  var hh:* = Math.floor(time / 3600);
  var mm:* = Math.floor((time % 3600) / 60);
  var ss:* = Math.floor(time % 60);
  if (mm < 10) {
      mm = "0" + mm;
  }
  if (ss < 10) {
      ss = "0" + ss;
  }
  return hh + ":" + mm + ":" + ss;
}

使い方

動画のdurationや再生時間を表示したいとき、以下のような感じで呼び出してください。

1
2
// ns:NetStream のとき
var value:String = _timeFormat(ns.time);

取得したvalueをTextFieldなんかで表示すればOK。 今までわざわざClassにはしてこなかったけど、 フォーマット後の文字列から整数(秒)に直す場合も出てきたので、 Classにしちゃおうかなー。

以上です。

電車は動かないので地元の友達に迎えに来てもらうことにしました★笑。

Comments