2021-04-14 (水) 04:00:58
  • category: swing folder: TimeZone title: TimeZoneによる日付表示の変換 tags: [DateFormat] author: aterai pubdate: 2004-04-19T10:36:59+09:00 description: TimeZoneなどを使って、日付の表示を変換します。 image: https://lh3.googleusercontent.com/_9Z4BYR88imo/TQTVW5Ljb9I/AAAAAAAAAng/mMDH4E_v9ZQ/s800/TimeZone.png

概要

TimeZoneなどを使って、日付の表示を変換します。
http://terai.xrea.jp/swing/timezone/screenshot.png

サンプルコード

View in GitHub: Java, Kotlin

解説

上記のサンプルは、Locale.USの日付文字列をSimpleDateFormat#parse(...)メソッドを使用して一旦Dateに変換し、DateFormat#format(...)メソッドでデフォルトロケールTimeZoneのフォーマットスタイルに変換しています。
  • dateFormat.setTimeZone(TimeZone.getTimeZone("JST"))のような3文字のタイムゾーンIDの使用は非推奨
  • Java 1.7.0からタイムゾーンのパターン文字XISO 8601形式に変換可能になった
    • X: +09
    • XX: +0900
    • XXX: +09:00
#spanend
#spanadd
DateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssXXX");
#spanend
#spanadd
System.out.println("pubdate: " + format.format(new Date()));
#spanend
#spanadd
// pubdate: 2014-09-08T00:05:45+09:00
#spanend
#spanadd

参考リンク

コメント