一个日期不会从字符串转换

时间:2018-01-30 20:35:53

标签: nsdateformatter

我正在以o" mm / dd / yyyy"的格式转换日期。到NSDates。由于一些莫名其妙的原因,11/3/1968转换为零。 19/2 / 1968,19 / 4/1968很好,但不是11/3/1968!?!?!?我已经使用沙箱尝试了几个不同的日期,但只有11/3/1968转换为零。

我有超过5,000个日期从1926年成功转换为1971年。只有这一个日期不会转换。

这是来自我的操场,只是为了说明一点:

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "MM/dd/yyyy"
let date1 = "11/2/1968"
let myDate1 = dateFormatter.date(from: date1)   //returns November 2, 1968
let date2 = "11/3/1968"
let myDate2 = dateFormatter.date(from: date2)   //returns nil
let date3 = "11/4/1968"
let myDate3 = dateFormatter.date(from: date3)   //returns November 4, 1968

1 个答案:

答案 0 :(得分:0)

您的区域设置是什么?

在你的地区,1968年11月3日可能是夏令时变化,0:00到0:59被跳过的日子。

如果是这种情况,请将区域设置设置为不会发生此行为的国家/地区。