如何在 Swift 中使用 dateformatter 将 daySuffix 添加到日期
How to add daySuffix to day using dateformatter in Swift
我正在使用以下代码获取 daySuffix
func daySuffix(from date: Date) -> String {
let calendar = Calendar.current
let dayOfMonth = calendar.component(.day, from: date)
switch dayOfMonth {
case 1, 21, 31: return "st"
case 2, 22: return "nd"
case 3, 23: return "rd"
default: return "th"
}
}
我正在使用 DateFormatter
在标签中显示 JSON 日期,如下所示。在这段代码中,由于 dateFormatter.dateFormat = "dd'th' MMMM, yyyy"
这行所有后缀,我只得到 th
如何使用 daySuffix
方法,请有人指导我
let fromDateString = enquiryData.from_date//vale from JSON
var fromDate: String?
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
let date1 = dateFormatter.date(from: fromDateString!)
if let date1 = date1 {
dateFormatter.dateFormat = "dd'th' MMMM, yyyy"
fromDate = dateFormatter.string(from: date1)
dateLbl.text = fromDate ?? ""
}
// prints exact day suffix
let testDate = daySuffix(from: date1!)
print("daySuffix value \(testDate)")// this prints exact suffix
这里如果我打印 let testDate = daySuffix(from: date1!) print("daySuffix value \(testDate)")
打印确切的后缀但是我如何添加后缀到日期
使用日期格式化程序时,''
中的所有字符都将被忽略并保持未格式化。所以你只需要做
dateFormatter.dateFormat = "dd'\(daySuffix(from: date1))' MMMM, yyyy"
或者这对你不起作用?
我正在使用以下代码获取 daySuffix
func daySuffix(from date: Date) -> String {
let calendar = Calendar.current
let dayOfMonth = calendar.component(.day, from: date)
switch dayOfMonth {
case 1, 21, 31: return "st"
case 2, 22: return "nd"
case 3, 23: return "rd"
default: return "th"
}
}
我正在使用 DateFormatter
在标签中显示 JSON 日期,如下所示。在这段代码中,由于 dateFormatter.dateFormat = "dd'th' MMMM, yyyy"
这行所有后缀,我只得到 th
如何使用 daySuffix
方法,请有人指导我
let fromDateString = enquiryData.from_date//vale from JSON
var fromDate: String?
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
let date1 = dateFormatter.date(from: fromDateString!)
if let date1 = date1 {
dateFormatter.dateFormat = "dd'th' MMMM, yyyy"
fromDate = dateFormatter.string(from: date1)
dateLbl.text = fromDate ?? ""
}
// prints exact day suffix
let testDate = daySuffix(from: date1!)
print("daySuffix value \(testDate)")// this prints exact suffix
这里如果我打印 let testDate = daySuffix(from: date1!) print("daySuffix value \(testDate)")
打印确切的后缀但是我如何添加后缀到日期
使用日期格式化程序时,''
中的所有字符都将被忽略并保持未格式化。所以你只需要做
dateFormatter.dateFormat = "dd'\(daySuffix(from: date1))' MMMM, yyyy"
或者这对你不起作用?