指定した日付が何曜日か取得する方法
Objective-cで指定した日付が何曜日か取得する方法を調べたのでメモしておきます。
NSCalendar *calendar = [NSCalendar currentCalendar]; //2015年2月1日を指定 NSDateComponents* components = [[NSDateComponents alloc] init]; components.year = 2015; components.month = 2; components.day = 1; NSDate* date = [calendar dateFromComponents:components]; //何曜日か取得(1=日曜日〜7=土曜日) components = [calendar components:NSWeekdayCalendarUnit fromDate:date]; NSArray *weekList = @[@"日曜",@"月曜",@"火曜",@"水曜",@"木曜",@"金曜",@"土曜"]; NSLog(@"%@",[weekList objectAtIndex:[components weekday]-1]);
components:NSWeekdayCalendarUnitでセットした日付の曜日番号を取得します。
日曜始まりで1=日曜日〜7=土曜日となります。
weekList配列に曜日の名称を入れておきます。
そのあと、配列からobjectAtIndexで取得できた曜日番号で曜日名称を取得する流れになります。
※曜日番号が1始まりなので−1しています。
いじょーです!