2011-07-13 16 views
0

私のアプリでは、現在のタイムゾーンに変換している日付オブジェクトに変換するときに、CST形式(Thu jun 03 10:00 CST 2011)の日付文字列を変換していますアジア太平洋のようなものですが、私は同じ文字列を与えたいと思います。私はタイムゾーンの変更を望んでいません。文字列を日付に変換する問題

ありがとう、 balu。

+0

ご質問に問題のあるコードを入力してください。このように問題を見つけやすくなります。 –

答えて

0

を下記のコードを使用してください。日付文字列が表示される言語を制御するため、ロケールの使用はオプションです。重要な部分は、TimeZoneを正しく使用することです。 LocaleとTimeZoneの設定を変えてコードを試して、出力の変化を確認してください。たとえば、ロケールをLocale('fr','FR')に変更すると、プログラムはJuly 13, 2011 8:05:52 AM PDTの代わりに13 juillet 2011 08:05:31 PDTを出力します。タイムゾーンを変更していないので、タイムゾーンはまだPDTであることに注意してください。

Locale locale = new Locale("en","US"); 
    TimeZone tz = TimeZone.getTimeZone("America/Los_Angeles"); 

    Calendar date = Calendar.getInstance(tz,locale); 

    DateFormat df = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG,locale); 
    df.setTimeZone(tz); 

    System.out.println(df.format(date.getTime())); 
1

CSTに正しいLocale objectを使用していますか?

「自動的にデフォルトのロケールを使用する多くの便利なメソッドがあることに注意してください...」

関連する問題