NSDate のデータを iPhone で設定している言語に合わせて表示する方法です。

NSDateFormatter* dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterLongStyle];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
[dateFormatter setLocale:[NSLocale currentLocale]];
NSString* dateString = [dateFormatter stringFromDate:date];


これで iPhone の設定で言語環境の書式を日本語にしていれば「2009年3月8日」のように表示され、United States に設定していれば「March 8, 2009」のように表示されます。

時間も表示したいときは setTimeStyle: で表示させたいスタイルを指定し、日付のフォーマットは setDateStyle: で指定する。

NSDateFormatterNoStyle
表示なし
NSDateFormatterShortStyle
“11/23/37” or “3:30pm”
NSDateFormatterMediumStyle
“Nov 23, 1937”
NSDateFormatterLongStyle
“November 23, 1937” or “3:30:32pm”
NSDateFormatterFullStyle
“Tuesday, April 12, 1952 AD” or “3:30:42pm PST”

関連する投稿