タイムゾーン変換のJava

タイムゾーン変換のJava

タイムゾーンのまず、

東から西への経糸によって地球の表面は、一つの領域、1時間の所定の領域に隣接する時間差として指定されます。ほとんど1時間で日の出を見るために時間の東端と違いの同じ地域の人々の西端。地域全体の人々、プラスに領域にわたって、クロック補正1時間(1時間マイナス西、東プラス1時間)を所有するか、マイナスの数時間は、異なるタイムゾーンの同じ時間は、時間を示したときそれは同じではありません。

時間の第二に、表現

文字列は通常、フォーマットされたとき私たちは、通常のような、時間を表すために表現し、「2019年11月5日午前20時05分」この文字列表現は、11月5日2019年に20:05です。しかし、時間帯は、あなたの現在の場所のタイムゾーンであることを暗黙の前提があり、人々の東8つの地区が、この時間は、東の9つの地区と思うだろう東の9区、20:05東8つの地区に考えられている参照します20時05、実際には、1時間の2時間差。右は、特定の瞬間を表し、またなど、タイムゾーン情報と結合するのは、「00 2019年11月5日20時05分8」タイムゾーンの文字列が表示さに関係なく、この人は知っている東8地区を表し時間。

第三に、タイム・スタンプ

タイムスタンプは随時発現、0ゾーンビューからの時間間隔を表し、「1970年1月1日午前0時0 :: 00」今まで(002019-11-5 12:05 +0)間隔は、東からの観点から地区8を表し、「1970年1月1日午前8時+8:00」の時間間隔(00 2019年11月5日20時05 +8)今まで。

今間隔= - 出発点と8時間の差今の両方が、時間間隔は同じであるため、出発点、タイムスタンプ内の任意の時間帯で同じトークン、今、この瞬間は同じです。

四、日付とタイムスタンプクラス

Javaクラスの日は、実際には、特定の瞬間をスタンプ時間が保存されている、Dateオブジェクトを取得するために、任意の時間帯に同じ時間で同じです。SimpleDateFormatの日付形式を使用する場合はフォーマットが時間差を取得するために、日付に人々が持っているだろうしながら、結果は同じ時間帯ではないので、デフォルトでは、日付をフォーマットするために、現在のシステムのタイムゾーンになります。

だから、時間の出力差を結果として東8地区と東の9区に次のコードを、しかし、彼らは実際には、Dateオブジェクトです同じ時間を表し

public class TestDate {

    public static void main(String[] args) {
        SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        Date date=new Date(1572960924868L);//以时间戳来给定一个特定时刻
        System.out.println(sdf.format(date));
    }
}

五、Javaのタイムゾーンの変換

同じのSimpleDateFormatによって行うことができるようにのSimpleDateFormatオブジェクトは、タイムゾーン、ゾーン変換日付オブジェクトを設定することができ

    @Test
    public void test2(){
        Date date=new Date(1572960924868L);
        SimpleDateFormat sdf8=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        sdf8.setTimeZone(TimeZone.getTimeZone("GMT+8:00"));//设置时区为东八区
        System.out.println("东八区的时间:"+sdf8.format(date));//输出格式化日期

        SimpleDateFormat sdf9=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        sdf9.setTimeZone(TimeZone.getTimeZone("GMT+9:00"));//设置时区为东八区
        System.out.println("东九区的时间:"+sdf9.format(date));//输出格式化日期
    }

図の結果出力は、以下の

1572960924868同じ時刻、日付オブジェクトに変換され、その後のSimpleDateFormatタイムゾーンの変換、時間列フォーマットされた出力によって。

だから、データベース格納領域は時々問題にならないだろうというときの実用的なアプリケーションでは、蓄積時間で遭遇する問題は、そのデータベースに対応するタイムスタンプに格納することができますが、時間は、使用するアプリケーションに必要なときに、このタイムスタンプは、時間のSimpleDateFormatは、希望の時間帯に変換した後で、日付に入れます。

おすすめ

転載: www.cnblogs.com/chengxuxiaoyuan/p/11802241.html