iOS 7中的NSDateFormatter字符串

Wya*_*ire 4 date ios ios7

尝试在iOS 7中格式化日期并在一周中的某一天获得意外结果.Apple的文档没有列出iOS 7的模式,但是为iOS 6提供的模式就在这里.看一周中的那一天

星期几 - 短日内使用一到三个字母,全名使用四个字母,或缩小名称使用五个字母.

但是我无法获得4个字母的全名格式化程序字符串.

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"EEE"];
NSLog(@"%@", [formatter stringFromDate:date]);
Run Code Online (Sandbox Code Playgroud)

打印"星期三"

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"EEEE"];
NSLog(@"%@", [formatter stringFromDate:date]);
Run Code Online (Sandbox Code Playgroud)

还打印"星期三",应打印"星期三"

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"EEEEE"];
NSLog(@"%@", [formatter stringFromDate:date]);
Run Code Online (Sandbox Code Playgroud)

打印"W"

是否有一组新的格式化字符串应该用于iOS 7或我做错了什么?

Gab*_*lla 5

正如其他人注意到的那样,它看起来像是一个语言环境问题

尝试强制使用如下所示的已知语言环境

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
// or
NSLocale *locale = [NSLocale currentLocale];
[formatter setLocale:locale];
[formatter setDateFormat:@"EEEE"];
NSLog(@"%@", [formatter stringFromDate:date]);
Run Code Online (Sandbox Code Playgroud)