Swift Dateformatter() 转换错误的日期

Swift Dateformatter() converts wrong date

我想将字符串转换为日期并使用一个小函数。如果我 运行 代码结果与输入不同:

 let startDateString = "20-02-2022-15-00"
        print(startDateString)
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "DD-MM-YYYY-HH:mm"
        dateFormatter.timeZone = TimeZone.current
        let startDate = dateFormatter.date(from: startDateString)
        print(startDate!)

startDateString 是“20-02-2022-15-00” startDate 的结果是:2021-12-27 14:00:00 +0000

结果的格式错误 YYYY-MM-DD HH:MM vs DD-MM-YYYY-HH:mm 并且日期大约是过去两个月。

我做错了什么?

你需要 yyyy 而不是 YYYY

dateFormatter.dateFormat = "dd-MM-yyyy-HH:mm"