我刚刚转换为swift 3,我有以下代码:
func timeToNSDate(_ time: String)->Date {
var currentDate = getDate_AsString()
let formatter = DateFormatter()
formatter.timeZone = TimeZone.autoupdatingCurrent
formatter.dateFormat = "yyyy-MM-dd-HH-mm"
currentDate+=time;
print("\n")
print(currentDate);
print("\n")
var dateTemp = formatter.date(from: "2016-10-1-08-20")!
print (dateTemp);
let outDate = formatter.date(from: currentDate)!
return outDate;
}
我在“let outDate = formatter ...”行中收到以下错误: 致命错误:在展开“可选”值时意外发现nil
有趣的是,虽然格式化程序在传递显式日期时有效。然而,我的currentDate变量具有完全相同的值。我的控制台看起来像这样:
Optional(2016)-Optional(10)-Optional(1)-08-20
2016-10-01 12:20:00 +0000
fatal error: unexpectedly found nil while unwrapping an Optional value
另外,在旁注上我注意到它增加了4个小时的时间,我的TimeZone系列是否无法正常工作?在我更新到swift 3之前,这个工作正常。
感谢。