不好转换string到NSDate

我有问题将string转换为NSDate。 在我的文本字段中,当用户点击它时,可以使用UIDatePickerselect一个date。 String作为TextField的date看起来像这样:“yyyy-mm-dd”现在,当我尝试使用此方法在2016-05-13例如转换date:

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

当我从date打印我收到一个信息,从fromDate不是2016-05-13但2016-01-11 23:58:00 +0000。 我不知道为什么我2016-01-11在我的TextField String中显示2016-05-13

对于您提供的信息,很难确定可能会出现什么问题。 在Swift游乐场我得到2016-01-13而不是2016-01-11,但如果我改变date格式,我可以得到2016-05-13:

 dateFormatter.dateFormat = "yyyy-MM-dd" 

大写的MM是关键。 我会检查出这个网站玩date格式选项:

http://nsdateformatter.com