Swift日期格式
我试图从按钮中提取一个日期字符串,格式是存储在CoreData中的日期 这是我的密码:Swift日期格式,swift,nsdateformatter,Swift,Nsdateformatter,我试图从按钮中提取一个日期字符串,格式是存储在CoreData中的日期 这是我的密码: let dateStr = setDateBTN.titleLabel?.text let dateFormatter = NSDateFormatter() dateFormatter.dateFormat = "MM-dd-YYYY" let date:NSDate = dateFormatter.dateFromString(dateStr!)! 如果我在dateStr上打印,我会得到以下信息:03-
let dateStr = setDateBTN.titleLabel?.text
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MM-dd-YYYY"
let date:NSDate = dateFormatter.dateFromString(dateStr!)!
如果我在dateStr上打印,我会得到以下信息:03-10-2015
。如果我在收到日期立即打印LN:2014-12-21 05:00:00+0000
当我在日期格式化程序中运行实际日期时,您是否知道为什么实际日期会发生变化?NSDateFormatter类参考: 日期格式指南(苹果): 一个常见的错误是使用YYYY。yyyy指定日历年,而yyyy指定ISO年-周日历中使用的年(年中的周) 正如您所期望的那样,您的代码应该如下所示:
let dateStr = setDateBTN.titleLabel?.text
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "MM-dd-yyyy"
let date:NSDate = dateFormatter.dateFromString(dateStr!)!
查阅文档:年份的格式为“yyy”,小写为y。(你不是第一个犯这个错误的人:)谢谢你,马丁。我最初把它改为小写,而其他一些东西不起作用,所以我只是在一个帮助中把它改为大写;希望它能有所帮助:请注意,在每个苹果的现代iOS系统中,您必须做到这一点:(幸运的是,这更容易!)