日期格式 ("yyyy-MM-dd HH:mm:ss VV") returns 无

Date format ( "yyyy-MM-dd HH:mm:ss VV") returns nil

我正在尝试更改应用内购买日期的格式,但 returns 在真实设备中为零,但在模拟器中效果很好。

let DateString = "2016-01-21 00:29:09 Etc/GMT"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss VV"
var dateObject = dateFormatter.date(from: DateString)
print(dateObject)

在处理硬编码日期格式时,您应该始终设置 DateFormatterlocale。大多数情况下可以使用en_US_POSIX

let dateString = "2016-01-21 00:29:09 Etc/GMT"
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss VV"
let dateObject = dateFormatter.date(from: dateString)
print(dateObject)