我需要能够从nsdate获得工作日,我有以下代码,它总是返回1.我试图改变月份,我尝试了从1到12的所有内容,但是工作日的结果总是1.
NSDate *date2 = [[NSDate alloc] initWithString:[NSString stringWithFormat:@"%d-%d-%d", 2010, 6, 1]];
unsigned units2 = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSWeekdayCalendarUnit;
NSCalendar *calendar2 = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *components2 = [calendar2 components:units2 fromDate:date2];
int startWeekDay = [components2 weekday];
[date2 release];
[calendar2 release];
Run Code Online (Sandbox Code Playgroud) 我有一个iOS应用程序,需要根据当天设置几个不同的日期标签.我正在使用NSDate并NSDateFormatter做到这一点.但是有些事情我不确定:如果用户的iOS设备的语言/本地化设置为英语以外的其他设置,那么我的if语句会检查当前是"星期一"还是"星期二",停止工作?
这是我的代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"yyyyMMdd";
NSDate *date = [NSDate date];
dateFormatter.dateFormat = @"EEEE";
NSString *dayString = [[dateFormatter stringFromDate:date] capitalizedString];
NSLog(@"Day: %@", dayString);
if ([dayString isEqualToString:@"Monday"]) {
}
else if ([dayString isEqualToString:@"Tuesday"]) {
}
else if ([dayString isEqualToString:@"Wednesday"]) {
}
else if ([dayString isEqualToString:@"Thursday"]) {
}
else if ([dayString isEqualToString:@"Friday"]) {
}
else if ([dayString isEqualToString:@"Saturday"]) {
}
else if ([dayString isEqualToString:@"Sunday"]) {
}
Run Code Online (Sandbox Code Playgroud) 使用以下代码.
NSDateFormatter* day = [[NSDateFormatter alloc] init];
[day setDateFormat: @"EEEE"];
NSLog(@"the day is: %@", [day stringFromDate:[NSDate date]]);
Run Code Online (Sandbox Code Playgroud)
如何将此值放入变量中?
我想使用if,例如:
if (day == "monday")
{
...
}
Run Code Online (Sandbox Code Playgroud)