尝试将 NSDate 转换为字符串时获取下一个日期

Getting next date when trying to convert NSDate to String

我确实有这个日期

2016-09-03 19:00:00 +0000

现在我正在尝试使用如下所示的特定格式将其转换为字符串

但是我在 return 中得到的并不如我所愿。格式化程序正在将日期添加到给定日期,如下所示

这是标准行为吗?

当您将鼠标悬停在日期上时,您会看到它显示的是 UTC,而格式化程序会自动将其转换为本地日期。如果您的时区比 UTC 早 5 小时,那么它将是当地时间的第二天。

这不是标准行为。发生这种情况是因为时区差异。正确设置时区

设置时区。

formatter.timeZone = [NSTimeZone timeZoneWithAbbreviation: @"GMT"];