星期五是日期格式“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"];

链接地址: http://www.djcxy.com/p/35177.html

上一篇: Is Friday with date format "c" returned as 5 or 6?

下一篇: Date Formatters in NSDateFormatter