如何在 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-MMmm 也是分钟,在你的问题中你已经告诉你想要像 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