我有一个数据源,可以提供日期
22017 // means: february 2017
122017 // december 2017
52018 // May 2018
我尝试使用String
Myyyy
格式解析此格式,但日期不正确。我现在在最后4个字母之前添加一个' - '短划线以正确分开年月
5-2018
12-2018
但是NSDateformatter
在设置M-yyyy
时仍然没有提供正确的格式,我真的不明白为什么。创建日期的信息太少了吗?
答案 0 :(得分:2)
它确实有效,但您必须准确指定月份是否有一个或两个数字
let dateArray = ["22017", "122017", "52018"]
let dateFormatter = DateFormatter()
for string in dateArray {
dateFormatter.dateFormat = string.characters.count == 5 ? "Myyyy" : "MMyyyy"
let date = dateFormatter.date(from: string)
print(date)
}