How do I get the day of the week with Foundation? How do I get the day of the week with Foundation? ios ios

How do I get the day of the week with Foundation?


NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];  [dateFormatter setDateFormat:@"EEEE"];NSLog(@"%@", [dateFormatter stringFromDate:[NSDate date]]);

outputs current day of week as a string in locale dependent on current regional settings.

To get just a week day number you must use NSCalendar class:

NSCalendar *gregorian = [[[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar] autorelease];NSDateComponents *comps = [gregorian components:NSWeekdayCalendarUnit fromDate:[NSDate date]];int weekday = [comps weekday];


Just use these three lines:

CFAbsoluteTime at = CFAbsoluteTimeGetCurrent();CFTimeZoneRef tz = CFTimeZoneCopySystem();SInt32 WeekdayNumber = CFAbsoluteTimeGetDayOfWeek(at, tz);


Many of the answers here are deprecated. This works as of iOS 8.4 and gives you the day of the week as a string and as a number.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];[dateFormatter setDateFormat:@"EEEE"];NSLog(@"The day of the week: %@", [dateFormatter stringFromDate:[NSDate date]]);NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierGregorian];NSDateComponents *comps = [gregorian components:NSCalendarUnitWeekday fromDate:[NSDate date]];int weekday = [comps weekday];NSLog(@"The week day number: %d", weekday);