NSCalendar - +currentCalendar より -initWithCalendarIdentifier: を使う

2010年12月17日金曜日 | Published in | 0 コメント

このエントリーをはてなブックマークに追加

覚書。

+[NSCalendar currentCalendar] で取得する NSCalendar のインスタンスは「言語環境 - カレンダー」設定によって決められる。
「和暦」を選んだ場合、-components:fromDate: で取得できる年の値は(当たり前だが)平成の年数となる(例:22)。

+currentCalendar から取得できる NSCalendarのインスタンスは利用環境に依存する挙動となるため、年数計算等で NSCalendar を使用する場合は +currentCalendar を使わず統一したカレンダを利用する。
(例) NSCalendar *calendar = [[NSCalendar alloc]
        initWithCalendarIdentifier:NSGregorianCalendar];
通常は NSGregorianCalendar で良いと思う。


NSCalendar Class Reference

Responses

Leave a Response

人気の投稿(過去 30日間)