0

满嘴:当我将日期“Tue, 15 Jan 2013 11:18:57 -0800”传递给 NSDateFormatter 时,模式字符串 @"EEE, dd MMM yyyy HH:mm:ss ZZZ" 当我的区域格式设置为“美国”,它工作正常。

当我做同样的事情时——除了我的区域格式设置为德国——它无法解析它。

知道为什么会这样吗?

4

2 回答 2

2

只是一个猜测:如果区域格式设置为德语,那么天的名称也会被翻译成德语。我会尝试检查是否可以用德语区域格式解析“Die, 15 Jan 2013 11:18:57 -0800”。

于 2013-01-15T23:20:06.480 回答
2

dateFormatter 的语言环境将设置为设备的 currentLocale,因此您需要将其设置为与您尝试格式化的日期相同的区域。

NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:locale];
于 2013-01-15T23:43:02.303 回答