iOS 加拉加斯时区问题

Issue with Caracas time zone in iOS

我正在测试应用程序中不同时区的 UTC 偏移量。最后,此代码几乎适用于所有时区。但我对加拉加斯有意见。

显示 UTC 偏移的代码。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

NSLocale *enUSPOSIXLocale = [NSLocale localeWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:enUSPOSIXLocale];

//This NSDateFormatter will return timezone in format "UTC+XX:XX"
[dateFormatter setDateFormat:@"'UTC'xxxxx"];

NSString *formattedTimeZone = [dateFormatter stringFromDate:[NSDate date]];

return formattedTimeZone;

在乌克兰,我收到 UTC+03:00,这是正确的。在加拉加斯,我收到 UTC-04:00,但实际偏移量是 UTC-04:30。

问题是为什么我在加拉加斯错过了 -30 分钟?

这不是编程问题,加拉加斯(委内瑞拉)时区最近发生了变化。

UTC-04:00 现在是正确的。

委内瑞拉总统对此进行了几次更改:

  • 从 2007 年开始使用 UTC-04:30。
  • 最近再次更改为 UTC-04:00。

http://www.bloomberg.com/news/articles/2016-04-14/maduro-orders-time-zone-change-to-battle-venezuela-power-crisis