時間帯
CFDate オブジェクトはすべてグリニッジ標準時 (GMT) で表されます。GMT 日付をローカル時間に変換するには、CFTimeZone オブジェクトを使用しなければなりません。CFTimeZone は、"PST" などの略語だけでなく、GMT からの正または負の時間的オフセットを持つ地政学的領域を表します。おなじみの略語に加えて、時間帯は国と地域によっても指定されています。例えば、米国はこれらの時間帯にまたがります:
アメリカ東部:-5時間 GMT
アメリカ東インディアナ:-5時間 GMT
アメリカ中央:-6時間 GMT
アメリカ山:-7時間 GMT
アメリカアリゾナ州:-7時間 GMT
アメリカ太平洋:-8時間 GMT
アメリカアラスカ:-9時間 GMT
アメリカアリューシャン:-10時間 GMT
アメリカハワイ:10時間 GMT
問題をさらに複雑にすると、どの地域も夏時間 (DST) になる場合とならない場合があります。
GMT をローカル時間に正しく変換するには、現在タイムゾーンにいるかと DST が有効かどうかを知る必要があります。Core Foundation は、ftp://elsie.nci.nih.gov//pub/ で管理されているパブリックドメインデータベースから取得した特定の時間帯のタイムゾーン名、略語、GMT オフセット、および DST 情報を使用します。このデータベースには、世界中の多くの代表的な場所のローカル時間の履歴を表す情報が含まれています。データベースは、GMT オフセットの変更と政治団体による夏時間の規則を反映するために定期的に更新されています。
CFDate と CFTimeZone の使用例については、日付の使用 を参照してください。
前の章 次の章