簡體   English   中英

將字符串日期解析為日期

[英]Parse a string date into date

let date = "2016-05-31T19:00:00+02:00"

let dateFormatterWithTime: DateFormatter {
    let df = DateFormatter()
    df.dateFormat = "yyyy-MM-dd'T'HH:mm:ss Z"
    return df
}
let thisIsNil = dateFormatterWithTime.date(from: date)

格式化程序有什么問題? 根據http://nsdateformatter.com/它返回一個有效日期,但我從中得到零

您的formatter應該是“ yyyy-MM-dd'T'HH:mm:ssZ ”。 標記為 Zone 的 Z 在您的日期中的 second 和 Zone 之間沒有間隙,但在您的格式中存在間隙

因此代碼應該是

    let date = "2016-05-31T19:00:00+02:00"

    var dateFormatterWithTime: DateFormatter {
        let df = DateFormatter()
        df.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
        return df
    }
    let thisIsNil = dateFormatterWithTime.date(from: date)

    print("date \(thisIsNil)")

輸出日志:

date Optional(2016-05-31 17:00:00 +0000)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM