将 TimeString yyyy-mm-dd HH:mm:ss 转换为 swift 中的 NSDate 时间 HH:mm AM/PM

Convert TimeString yyyy-mm-dd HH:mm:ss to NSDate Time HH:mm AM/PM in swift

我想将 Time string 转换为 NSDate TimeHH:mm: a格式。我现在有一个代码

let defaultStartTime = json!["start_schedule_datetime"] as? String
 let defaultEndTime = json!["end_schedule_datetime"] as? String



                    print(defaultStartTime,defaultEndTime)

                    dispatch_async(dispatch_get_main_queue(), {

                        let dtf = NSDateFormatter()
                        dtf.timeZone = NSTimeZone(name: "UTC")
                        dtf.dateFormat = "HH:mm a"

                        let defaultStartdate : NSDate = dtf.dateFromString(defaultStartTime!)!
                        let defaultEnddate : NSDate = dtf.dateFromString(defaultEndTime!)!

                        print(defaultStartdate,defaultEnddate)

                        self.startTime.date = defaultStartdate
                        self.endTime.date = defaultEnddate
                        self.endTime.reloadInputViews()
                        self.startTime.reloadInputViews()

                        })

其中:-

start_schedule_datetime = 2016-05-27 13:35:00
end_schedule_datetime = 2016-05-27 19:35:00

这里我要时间进入HH:mm a。但是当我尝试这样做时,我得到

fatal error: unexpectedly found nil while unwrapping an Optional value

任何人都可以在这里帮助我。谢谢

检查下面的答案。当前日期和日期选择器日期都在显示。

 let dateFormatter = NSDateFormatter()
    dateFormatter.dateFormat = "yyyy-MM-dd hh:mm a"
    print(dateFormatter.stringFromDate(NSDate())) //if you want current date
    print(dateFormatter.stringFromDate(yourdatepickername.date) //if you want your selective date

这是适合所有人的最佳解决方案之一。 你可以很容易地从约会中得到你想要的。您还可以了解 dateformatter。

参考1: http://nsdateformatter.com/

编辑 1

参考2: For Ready made code

祝你好运。