1

アプリで非常に奇妙な日付変換が見られます。これはコードです:

theDateString = [theDateFormatter stringFromDate:date];

もしそうdateなら2007-12-31 00:00:00 +0100 theDateString2008

しかし、日付2004-12-31 00:00:00 +0100 theDateString2004.

メソッドが- (NSString *)stringFromDate:(NSDate *)date入っNSDateFormatterていて、Macアプリです。

NSDateFormatter 形式は次のとおりです。[theDateFormatter setDateFormat:@"Y"];

なんで ?ありがとう

4

1 に答える 1

2

大文字の「Y」は「年の週」に従って年を指定するため、@"y"代わりに を使用する必要があります。@"Y"2007 年の 52 週目は 2008 年に終了するため、2007 ではなく 2008 が返されます。

更新:
参照: http://waracle.net/mobile/iphone-nsdateformatter-date-formatting-table/

于 2013-01-16T13:58:26.923 に答える