DateFormatter 返回有效字符串
DateFormatter Returning with Valid String
我从字符串中得到的日期总是 nil,我不知道为什么。
func getBirthdate() -> Date? {
let formatter = DateFormatter()
formatter.dateFormat = "MM/dd/yyyy"
formatter.dateStyle = .medium
formatter.timeStyle = .none
print(self.dob!)
let birthdate = formatter.date(from: self.dob!)
return birthdate
}
self.dob:
05/01/1984
您应该设置 .dateFormat
或 .dateStyle
/.timeStyle
。
它们是互斥的,当您设置 .dateStyle
时,您会将 .dateFormat
重置为预设日期格式之一。
所以,应该是:
func getBirthdate() -> Date? {
let formatter = DateFormatter() // Also, you should move initialisation out and reuse `DateFormatter`
formatter.dateFormat = "MM/dd/yyyy"
print(self.dob!)
let birthdate = formatter.date(from: self.dob!)
return birthdate
}
我从字符串中得到的日期总是 nil,我不知道为什么。
func getBirthdate() -> Date? {
let formatter = DateFormatter()
formatter.dateFormat = "MM/dd/yyyy"
formatter.dateStyle = .medium
formatter.timeStyle = .none
print(self.dob!)
let birthdate = formatter.date(from: self.dob!)
return birthdate
}
self.dob:
05/01/1984
您应该设置 .dateFormat
或 .dateStyle
/.timeStyle
。
它们是互斥的,当您设置 .dateStyle
时,您会将 .dateFormat
重置为预设日期格式之一。
所以,应该是:
func getBirthdate() -> Date? {
let formatter = DateFormatter() // Also, you should move initialisation out and reuse `DateFormatter`
formatter.dateFormat = "MM/dd/yyyy"
print(self.dob!)
let birthdate = formatter.date(from: self.dob!)
return birthdate
}