0

それを行うためのはるかに優れた正しい方法があることは知っていますが、一時的な解決策が必要です。時間に余分な時間を追加する必要があり、日も自動的に変更されます。以下のコードをどのように変更すればよいですか?

package {
public class getTime {
    private var today:Date=new Date();
    private var hour:uint=today.getHours();
    private var minute:uint=today.getMinutes();
    private var month:uint=today.getMonth();
    private var monthArray:Array=new Array('January','February','March','April','May','June','July','August','September','October','November','December');
    private var time:String = getUSClockTime(today.getHours(), today.getMinutes());
    public var dateNtime:String=(time+", " +today.getDate()+" "+monthArray[month]+" "+today.getFullYear());;

    public function getTime() {
    }

    private function getUSClockTime(hrs:uint, mins:uint):String {
        var modifier:String="PM";
        var minLabel:String=doubleDigitFormat(mins);

        if (hrs>12) {
            hrs=hrs-12;
        } else if (hrs == 0) {
            modifier="AM";
            hrs=12;
        } else if (hrs < 12) {
            modifier="AM";
        }

        return (doubleDigitFormat(hrs) + ":" + minLabel + " " + modifier);
    }

    private function doubleDigitFormat(num):String {
        if (num<10) {
            return ("0" + num);
        }
        return num;
    }
}
}
4

1 に答える 1

0

コードが現在行っていることと、別の方法で行うべきことを明確にできますか?

これを行うために私が考えることができる最も簡単な方法は、Dateオブジェクトを使用して次のことを行うことです。

  1. Date最初の時間でインスタンスを作成します。
  2. で時間をミリ秒単位で取得しますdateInstance.getTime()
  3. タイムゾーンの差をミリ秒単位で追加します。
  4. Dateミリ秒単位で更新された時刻から新しいを作成します。
  5. 必要に応じて日付をフォーマットするために、任意の文字列操作を行います。

このようにして、Date クラスが新しい日付と時刻を処理します。

于 2010-04-23T04:14:58.947 に答える