日付文字列を含む配列を降順で並べ替えたいのですが、SOの回答を試しましたが、間違った出力が得られます。
以下のように私のコードを見てください:
NSArray *dateArray=[NSArray arrayWithObjects:@"01/12/2012",@"01/26/2011",@"02/09/2005",@"02/24/2006",@"03/19/2007",@"07/14/2011",@"08/17/2007",@"10/04/2007",@"10/31/2006",@"12/05/2012",@"12/06/2006",@"12/23/2008",nil];
NSDateFormatter *formatter=[[NSDateFormatter alloc]init];
[formatter setDateFormat:@"MM/DD/YYYY"];
NSMutableArray *tempArr=[[NSMutableArray alloc]init];
for (int i=0; i<[dateArray count]; i++) {
NSString *dt=[dateArray objectAtIndex:i];
NSDate *newDt=[formatter dateFromString:dt];
[tempArr addObject:newDt];
}
NSLog(@"tempArr is %@",tempArr);
以下のようなコンソール出力を取得しています。
「 2004-12-18 18:30:00 +0000"、"2005-12-24 18:30:00 +0000"、"2006-12-23 18:30:00 +0000"、"2010-12-18 18:30:00 +0000"、"2006-12-23 18:30:00 +0000"、"2006-12-23 18:30:00 +0000"、"2005-12-24 18:30:00 +0000"、"2011-12-24 18:30:00 +0000"、"2005-12-24 18:30:00 +0000"、"2007-12-22 18:30:00 +0000" )
月の代わりに「12」が来る理由と、指定した形式のように日付形式が来ない理由がわかりません。