2016-11-10 16 views
0

月曜日11月13日13:36:01 GMT + 03:00 2016のような日付をローカルに変換する必要があります。だから、午前16時36分01秒GMT +日付をアンドロイドでローカルに変換する

Date serverDate; // Mon Nov 14 13:36:01 GMT+03:00 2016 

SimpleDateFormat dateFormat = new SimpleDateFOrmat("hh:mm:ss"); 
String result = dateFormat.formatDate(serverDate); 

結果でなければなりませんGMT +03見ない:00、私に間違った時間(午後01時36分の代わりに、午後04時36分)を提供します。

+1

ローカルタイムゾーンはどのくらいですか?あなたがGMT + 3の場合、13:36:01は正しいです。 – Henry

+0

はい、既に日付の13:36であるGMT +3が表示されています。 – aleksandrbel

答えて

0

私はちょうどZZZZZなしでフォーマッタを作成し、GMTにタイムゾーンを設定する必要がありました。

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss", Locale.getDefault()); 
    simpleDateFormat.setTimeZone(TimeZone.getTimeZone("GMT")); 
    final Date localDate = simpleDateFormat.parse("2016-11-11T09:48:24-05:00"); 

    SimpleDateFormat dateFormat = new SimpleDateFOrmat("hh:mm:ss"); 
    String result = dateFormat.formatDate(localDate); //12:48:24 

localDate変数のこのコード時刻は、12:48:24(GMT +03:00の場合)になります。

関連する問題