1

Dateオブジェクト(CSTゾーン)をGMT文字列に変換してから、Dateオブジェクト(CST)に戻そうとしています。

私は次のコードを使用しましたが、動作していますが、GMT日付フォーマッターを使用してGMT文字列をCST日付に変換する方法がわかりません。
私の質問は、CSTフォーマッタでフォーマッタを使用せずにCST時間を取り戻すにはどうすればよいですか?

Date inputdate = new Date();// My local time CST

System.out.println(inptdate);

SimpleDateFormat sdfgmt = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss.000'Z'");
sdfgmt.setTimeZone(TimeZone.getTimeZone("GMT"));

String gmtString = sdfgmt.format(inputdate );

System.out.println(gmtString);

Date outputDate  = sdfgmt.parse(gmtString);

System.out.println(outputDate);

出力

Fri Jan 18 22:52:47 CST 2013  
   2013-01-19T04:52:47.000Z  
   Fri Jan 18 22:52:47 CST 2013
4

1 に答える 1

0

Javaの日付には、タイムゾーンの概念はありません。Javaの日付は、単に長いものとして保存されます。日付を印刷することにより、その長さをコンピューターのタイムゾーンに変換します。タイムゾーンの保存に興味がある場合は、JodaのDateTimeクラスを試してください。

于 2013-01-19T05:15:53.163 に答える