iOS DateFormatter给出nil,当设备时区和区域更改时

时间:2018-10-10 13:24:15

标签: ios swift date nsdateformatter

我在这样的字符串中有一个日期

let time = "Wed Oct 10 12:22:32 UTC 2018"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "EE MM dd HH:mm:ss zz yyyy"
let rawDate = dateFormatter.date(from: time) // GETTING rawDate
dateFormatter.dateFormat = "d MMM yyyy, h:mm a"
guard let date = rawDate else { return "" } // rawDate NIL HERE
let time = dateFormatter.string(from: date)

在我所在的时区孟买和印度地区,效果很好。但是,当我将其更改为其他地区和时区时,rawDate变为零。

我在做什么错?

PS::请给出一般性的答案,不需要固定的时区区域设置

更新:由于重复引用包含 en_US posfix,因此如果我使用 en_GB 或其他方式,这不会使代码通用数据将不正确。

0 个答案:

没有答案