【发布时间】:2023-03-26 23:38:02
【问题描述】:
我有字符串,因为它包含日期(“2018-05-10T13:00:00”)。 但是,我希望日期格式为“MMM dd,yyyy”。所以,我写了如下代码。
func convertDateStringToDate(longDate: String) -> String{
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MMM dd, yyyy"
let date = dateFormatter.date(from: longDate)
if date != nil {
let formatter = DateFormatter()
formatter.dateStyle = .short
let dateShort = formatter.string(from: date!)
return dateShort
} else {
return longDate
}
}
然后像下面这样调用
let dateFormattedString = convertDateStringToDate(longDate: (valuesDict.value(forKey: "dateValue") as? String)!)
但是,它再次打印原始值,而不是更新格式。
“2018-05-10T13:00:00”
有什么建议吗?
【问题讨论】:
-
您正在尝试解析
2018-05-10T13:00:00使用格式MMM dd, yyyy显然不匹配。另外,请使用本地化格式,而不是像MMM dd, yyyy这样的硬编码英文格式。 -
"MMM dd, yyyy" 这是我的要求格式。
标签: ios iphone swift nsdateformatter date-format