iOS - 以国际格式和英语获取本地日期和时间

iOS - Get local date & time in International format and English language

我正在尝试使用以下代码获取用户的本地日期和时间

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat: @"dd MMM yyyy"];
[dateFormatter setTimeZone:[NSTimeZone localTimeZone]];

NSDateFormatter *timeFormatter = [[NSDateFormatter alloc] init];
[timeFormatter setDateFormat: @"HH:mm"];
[timeFormatter setTimeZone:[NSTimeZone localTimeZone]];

self.appearedOnDate = [dateFormatter stringFromDate:[NSDate date]];
self.appearedOnTime = [timeFormatter stringFromDate:[NSDate date]];

它 returns 正确的值,但使用用户设备上设置的语言。 例如,如果用户在他的设备上设置了简体中文,我得到的输出为

24 3月 2015 --- 22:13

如何获得英文的当地时间?

我猜这只发生在 iOS8 而不是 iOS6,但我不确定。

您可以在打印输出之前添加以下代码。

 [NSLocale availableLocaleIdentifiers];
 NSLocale *locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
 [timeFormatter setLocale:locale];