2014 年 12 月 31 日の間違った日付が返されます。サンプルコード:
NSDateFormatter *dateF =[[NSDateFormatter alloc] init];
NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateF setLocale:enUSPOSIXLocale];
[dateF setDateFormat:@"MM/DD/yyyy"];
NSDate *date = [dateF dateFromString:@"12/31/2014"];
NSLog(@"Date for locale %@: %@",
[[dateF locale] localeIdentifier], [dateF stringFromDate:date]);
date = [dateF dateFromString:@"01/01/2013"];
NSLog(@"Date for locale %@: %@",
[[dateF locale] localeIdentifier], [dateF stringFromDate:date]);
返される結果は次のとおりです。
Date for locale en_US_POSIX: 12/335/2014
Date for locale en_US_POSIX: 01/01/2013
これにはいくつかの疑問が生じます。1) 正しい日付を取得するにはどうすればよいですか? 2) 1 か月が 335 日になるのはなぜですか?
ありがとうございます、