簡體   English   中英

SwiftUI 字符串到格式化日期 (ISO)

[英]SwiftUI string to formatted date (ISO)

你能幫我解決這個話題嗎?

從 API 我得到以下日期作為字符串:2021-05-21T14:35:15.647+02:00

如何將其轉換為日期對象,以便我可以對其進行格式化?

我在 stackoverflow 或其他教程中以不同的方式嘗試了它,如下所示:

let date = "2021-05-21T14:35:15.647+02:00"

func formatStringDate(date: String) -> String {
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
        let newDate = dateFormatter.date(from: date)
        dateFormatter.setLocalizedDateFormatFromTemplate("MMMM d, yyyy")
        return dateFormatter.string(from: newDate!)
}

var newDate = formatStringDate(date: date)

print(newDate)

或者

let timestampString = "2018-12-09T11:08:48-05:00"
if let date = isoDateFormatter.date(from: timestampString) {
  let dateFormatter = DateFormatter()
  dateFormatter.dateFormat = "MMMM, dd, yyyy h:mm a"
  let dateFormattedString = dateFormatter.string(from: date)
  print(dateFormattedString) // December, 09, 2018 11:08 AM
} else {
  print("not a valid date")
}

但它不起作用。

謝謝你的幫助

感謝您的幫助,我得到了以下代碼片段:

let dateString = "2021-05-21T14:35:15.647+02:00"
let inputFormatter = ISO8601DateFormatter()
inputFormatter.formatOptions = [
  .withFractionalSeconds,
  .withFullDate
]
let date = inputFormatter.date(from: dateString)
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd.MM.YYYY"
print(dateFormatter.string(from: date!))

謝謝

暫無
暫無

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

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