如何在 swift 中获取月份和日期?
How to get month & day in swift?
我想从 Swift 中的 29 NOV
日期中获取月份和日期。我试过下面的代码,但这对我不起作用。
func getMonthfromDate(str_date:String)
{
let dateAsString = str_date
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"
let date = dateFormatter.date(from: dateAsString)
dateFormatter.dateFormat = "dd-mm"
print("date is \(dateFormatter.string(from: date!))")
}
Input-"19-11-2016"
Output-19:00
请指导哪种方法正确?
你的第二个 formate 是错误的,它应该是 dd-MM
,mm
也是分钟,在你的问题中你已经告诉你想要像 29 NOV
这样的日期和月份,那么你的 formate 应该是 dd-MMM
.
let dateAsString = str_date
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"
if let date = dateFormatter.date(from: dateAsString) {
dateFormatter.dateFormat = "dd-MMM"
print("date is \(dateFormatter.string(from: date))")
}
注意: 不要强制使用 !
包装日期对象,如果 nil
连击使用 [=] 可选包装,它会使您的应用程序崩溃17=] 和 guard
.
检查其他 date formatters。
我想从 Swift 中的 29 NOV
日期中获取月份和日期。我试过下面的代码,但这对我不起作用。
func getMonthfromDate(str_date:String)
{
let dateAsString = str_date
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"
let date = dateFormatter.date(from: dateAsString)
dateFormatter.dateFormat = "dd-mm"
print("date is \(dateFormatter.string(from: date!))")
}
Input-"19-11-2016"
Output-19:00
请指导哪种方法正确?
你的第二个 formate 是错误的,它应该是 dd-MM
,mm
也是分钟,在你的问题中你已经告诉你想要像 29 NOV
这样的日期和月份,那么你的 formate 应该是 dd-MMM
.
let dateAsString = str_date
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd-MM-yyyy"
if let date = dateFormatter.date(from: dateAsString) {
dateFormatter.dateFormat = "dd-MMM"
print("date is \(dateFormatter.string(from: date))")
}
注意: 不要强制使用 !
包装日期对象,如果 nil
连击使用 [=] 可选包装,它会使您的应用程序崩溃17=] 和 guard
.
检查其他 date formatters。