NSDateFormatter总是返回nil

时间:2015-09-16 04:22:00

标签: ios swift

这是我的代码:

var sdArr = sd.componentsSeparatedByString(".")
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'hh:mm:ss"
let date = dateFormatter.dateFromString(sdArr[0])

sdArr[0]的值为"2015-10-01T14:30:00"

为什么date的值是零?这在2天前工作正常,我没有碰我的代码。现在突然超出date的蓝色值是零。 我已经尝试将日期字符串替换为sdArr[0],但它仍无法正常工作

3 个答案:

答案 0 :(得分:3)

请使用日期格式化程序

dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"

您使用的是hh格式为12小时格式,HH格式为24小时格式

答案 1 :(得分:0)

将dateformat yyyy-MM-dd'T'hh:mm:ss添加到yyyy-MM-dd'T'HH:mm:ss,因为您以24小时格式而非12小时格式获取小时,因此您必须使用HH

dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss" //HH

请参阅Formatting date and time with iPhone SDK?(Vanya的回答)以了解有关日期格式的更多信息。

答案 2 :(得分:0)

使用此NSDateFormatter

var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss"