如何将特定字符串“05-Jan-2022 12:05 AM”格式化为 Swift 中的日期对象?
How can I format a specific string "05-Jan-2022 12:05 AM" to a date object in Swift?
我试过使用这段代码,在 playground 中运行良好,但在实际项目中崩溃了。
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MMM-yyyy HH:mm a"
let dates = [
"05-Jan-2022 12:00 AM",
"11-Nov-2021 12:00 AM",
"11-Nov-2021 12:00 AM",
"08-Oct-2021 03:04 PM",
"08-Oct-2021 12:00 AM",
"30-Sep-2021 03:48 PM"
]
dates.forEach { date in
print(dateFormatter.date(from: date)!)
}
两个问题:
您必须将语言环境设置为固定 en_US_POSIX
12 小时格式为 hh
let dateFormatter = DateFormatter()
dateFormatter.locale = Locale(identifier: "en_US_POSIX")
dateFormatter.dateFormat = "dd-MMM-yyyy hh:mm a"
我试过使用这段代码,在 playground 中运行良好,但在实际项目中崩溃了。
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MMM-yyyy HH:mm a"
let dates = [
"05-Jan-2022 12:00 AM",
"11-Nov-2021 12:00 AM",
"11-Nov-2021 12:00 AM",
"08-Oct-2021 03:04 PM",
"08-Oct-2021 12:00 AM",
"30-Sep-2021 03:48 PM"
]
dates.forEach { date in
print(dateFormatter.date(from: date)!)
}
两个问题:
您必须将语言环境设置为固定
en_US_POSIX
12 小时格式为
hh
let dateFormatter = DateFormatter() dateFormatter.locale = Locale(identifier: "en_US_POSIX") dateFormatter.dateFormat = "dd-MMM-yyyy hh:mm a"