1

繰り返し質問することをお詫びしますが、今回はUTCに変換するのがとても混乱しています。

現在のシステム日付を取得するアプリケーションで

Date date1 = new Date();//Fri Jul 26 10:34:06 IST 2013
SimpleDateFormat sdf = new SimpleDateFormat ("yyyy-MM-dd HH:mm:ss ");

次に、ドロップダウンリストがあります(Selectboxタイムゾーンリストを使用しています)

インドのユーザーが選択した場合GMT+05:30

今、私はのようなものdate1を使ってUTC時間に変換しGMT+05:30たいFri Jul 26 05:00:06 IST 2013

したがって、すべてのユーザーはいくつかのタイムゾーンのみを選択しますが、そのタイムゾーンではサーバーの現在の日付と時刻を使用して UTC 時間に変換されます

私を助けてください。

4

3 に答える 3

1

これを試して

SimpleDateFormat f = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.HOUR_OF_DAY, 5);
cal.add(Calendar.MINUTE, 30);
System.out.println(f.format(cal.getTime()));
于 2013-07-26T05:07:57.243 に答える
0

これを試して:

SimpleDateFormat format = new SimpleDateFormat();
format.setTimeZone(TimeZone.getTimeZone("GMT+05:30"));
System.out.println(format.format(cal.getTime()));
于 2013-07-26T05:28:55.407 に答える
0

これを試して

    String tz = "GMT+05:30";
    SimpleDateFormat f = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy");
    f.setTimeZone(TimeZone.getTimeZone(tz));
    System.out.println(f.format(new Date()));

GMT+05:30 は IST と同等ではないため、IST は出力されないことに注意してください。

于 2013-07-26T05:20:00.847 に答える