一尘不染

难以将String转换为NSDate

swift

我在将String转换为NSDate时遇到问题。用户在我的文本字段中点击时,可以使用选择日期UIDatePickerString因为日期TextField看起来像这样:“
yyyy-mm-dd”现在,当我尝试使用这种方法转换日期时,例如2016-05-13:

func changeStringToNSDate(){

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-mm-dd"
let from = moreSorts.fromDatePickerTextField.text!
let fromDate = dateFormatter.dateFromString(from)

print(fromDate)

}

当我打印时,fromDate我收到的信息fromDate不是2016-05-13而是2016-01-11 23:58:00
+0000。我不知道为什么在TextField字符串显示2016-05-13 时会有2016-01-11


阅读 165

收藏
2020-07-07

共1个答案

一尘不染

您所提供的信息很难确定到底出了什么问题。在Swift操场上我得到的是2016-01-13,而不是2016-01-11,但是如果我更改日期格式,我可以得到2016-05-13:

dateFormatter.dateFormat = "yyyy-MM-dd"

大写的MM是关键。我将检查该网站以使用日期格式选项:

http://nsdateformatter.com

2020-07-07