【发布时间】:2020-05-24 18:44:54
【问题描述】:
Swift 5.x 有什么变化吗?不知道我在这里做错了什么。
extension String {
var dateValue: Date? {
let dateAsString = "13:15"
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "HH:mm"
let date = dateFormatter.date(from: dateAsString) //date is being nil here
let Date24 = dateFormatter.string(from: date!)
print("24 hour formatted Date:",Date24)
return date
}
}
【问题讨论】:
-
您的手机设置为 12h 格式吗?之前可能需要 en_us_posix。
-
您的屏幕截图和给定的代码不一样。您使用的是哪个代码?
-
你的代码和你的截图不一样。函数
setLocalizedDateFormatFromTemplate用于将日期转换为字符串,而不是相反。 -
用正确的图片和详细信息更新了问题@Fogmeister 和 Ankur Lahiry
-
@rakappdev 在解析固定日期格式时,您需要先将 DateFormatter 区域设置设置为“en_US_POSIX”,然后再设置其他属性。你也应该设置你的日期格式化日历,如果可能的话,设置它的 defaultDate。
标签: ios swift xcode date swift5.2