星期五是日期格式“c”是5还是6?
最初我认为使用这个代码
+ (NSString *)getDayOfTheWeek:(NSDate *)date format:(NSString*)format { NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease]; dateFormatter.dateFormat = format; NSString *formattedDateString = [dateFormatter stringFromDate:date]; NSLog(@"Des pico je: %@",formattedDateString); return formattedDateString; } NSDate *now = [NSDate date]; NSString *today = [self getDayOfTheWeek:now format:@"c"]
应该每天返回一个带有数字的字符串,但对于不同的区域格式设置会得到不同的结果。 (星期一= 1或星期一= 1),也许有些变化。 不知道。 那么是否有一种常见的方法可以轻松地在iPhone上为所有区域日期类型设置一般地获得此解决方案?
“c”是本周的独立日。 独立意味着它的使用意味着没有任何进一步的日期上下文(而不是“e”)。 并且当地的星期几取决于区域设置,即区域设置是一周中的第一天。 所以星期五可以是5或6,具体取决于语言环境。
要查明哪一天是一周中的第一天,您可以使用[[NSCalendar currentCalendar] firstWeekday]
。
但是如果你只需要一个名字为“今日”的字符串,比如“星期一”,“星期二”等,你可以使用NSString *today = [self getDayOfTheWeek:now format:@"cccc"];
。