私は以下のコードを持っています:
DateFormat df = new SimpleDateFormat("M/d/yy h:mm a z");
df.setLenient(false);
System.out.println(df.parse("6/29/2012 5:15 PM IST"));
PC のタイムゾーンを太平洋時間 (PDT の場合は UTC-7) に設定すると、次のように出力されます。
2012 年 6 月 29 日金曜日 08:15:00 PDT
PDT は IST (インド標準時) から 12.5 時間遅れていませんか? この問題は、他のタイムゾーンでは発生しません。日付文字列で IST の代わりに UTC、PKT、MMT などを試しました。ひょっとして Java には 2 つの IST がありますか?
PS: 実際のコードの日付文字列は外部ソースに由来するため、GMT オフセットやその他のタイムゾーン形式は使用できません。