2010年8月13日金曜日

日時とLocale、TimeZone関係のメモ

Date
日時を表すクラス。
new Date()で現在日時を返す。
1970/1/1 00:00:00 GMT からの経過msをlong値で取得可能 (getTime())。
このlong値は、TimeZoneが変わっても値は変わらない(というか、DateにTimeZoneという概念が無く、全部GMTとして処理するだけ?)

Locale
場所を表すクラス。
Locale.getDefault()で、システムに設定されている場所を返す。

TimeZone
タイムゾーンを表すクラス。
日本は"JST"、グリニッジ標準時は"GMT"。TimeZone.getDefault()で、システムに設定されているタイムゾーンを返す。

Calendar
カレンダーを表す抽象クラス。
LocaleやTimeZoneによる、月や週などの差異を吸収する。日時の増減を行う場合は、このクラスを使う。

DateFormat
日時の書式を表すクラス。
Localeによる、日時の表現の違いを吸収する。また、指定のTimeZone表現への変換も行う。日時の入出力を行う場合は、このクラスを使う。

android.text.format.DateFormat
androidで定義されているDateFormat。
androidでは、OSで日時の表示順序などを設定できる。そういったOS設定を考慮した書式を扱うことができる。
  • DateFormat.getDateFormat(context)
  • DateFormat.getMediumDateFormat(context)
  • DateFormat.getLongDateFormat(context)
  • DateFormat.getTimeFormat(context)

Time
androidで定義されている、Calenderに代わるクラス。

0 件のコメント:

コメントを投稿