Swift 字符串转换为 SwiftDate

Posted

技术标签:

【中文标题】Swift 字符串转换为 SwiftDate【英文标题】:Swift string convert to SwiftDate 【发布时间】:2018-09-12 05:54:51 【问题描述】:

如何将12 Oct 2018 at 10:45:46 AM 转换为SwiftDate DateInRegion? 我的代码返回 nil:

    let ds = "12 Oct 2018 at 10:45:46 AM"
    let region = Region(tz: TimeZone.current,
                        cal: CalendarName.gregorian.calendar,
                        loc: Locale.init(identifier: "en"))
    let format = DateFormat.custom("EEE, dd MM yyyy HH:mm:ss zzz")
    var str = ds.date(format: format, fromRegion: region)

【问题讨论】:

SwiftDate - string to date的可能重复 【参考方案1】:

检查你的日期格式,不可用,正确的格式是

let ds = "12 Oct 2018 at 10:45:46 AM"
let format = DateFormat.custom("dd MMM yyyy 'at' HH:mm:ss a")

有关其他信息,您可以从 SO.for 获得 old answered。对于日期格式,您可以从 here 获得详细答案

【讨论】:

我刚刚将 EEE 更改为 MM,现在可以使用了。谢谢!

以上是关于Swift 字符串转换为 SwiftDate的主要内容,如果未能解决你的问题,请参考以下文章

Swift 日期处理库 SwiftDate

SwiftDate 浅析

无法将字符串转换为日期和日期转换为字符串 Swift 5.2

Swift 将字符转换为字符串

swift 将日期字符串转换为swift中的日期。

Swift 4 - 解码期间字符串转换为大写