NSDateFormatter return 指定日期字符串的空日期
NSDateFormatter return nil date for specify date strings
我正在尝试将字符串转换为日期,但 NSDateFormatter returns 对于特定日期为 nil。在下面的代码中,除了 date2 和 date7 之外,所有字符串都转换为 Date。关于什么是错误的任何指示?谢谢
let date1 = "Jan 01, 1941"
let date2 = "Oct 01, 1941"
let date3 = "Oct 13, 1941"
let date4 = "Sep 30, 1941"
let date5 = "Mar 31, 1941"
let date6 = "Oct 02, 1941"
let date7 = "Oct 01, 1941"
let dateStringFormatter = DateFormatter()
dateStringFormatter.dateFormat = "MMM dd, yyyy" //Using custom
dateStringFormatter.locale = Locale(identifier: "en_US_POSIX")
let date_1 : Date? = dateStringFormatter.date(from: date1)
let date_2 : Date? = dateStringFormatter.date(from: date2)
let date_3 : Date? = dateStringFormatter.date(from: date3)
let date_4 : Date? = dateStringFormatter.date(from: date4)
let date_5 : Date? = dateStringFormatter.date(from: date5)
let date_6 : Date? = dateStringFormatter.date(from: date6)
let date_7 : Date? = dateStringFormatter.date(from: date7)
print("\(String(describing: date_1)),\n\(String(describing: date_2)),\n\(String(describing: date_3)),\n\(String(describing: date_4)),\n\(String(describing: date_5)),\n\(String(describing: date_6)),\n\(String(describing: date_7))")
以上问题可以通过在DateFormatter上设置日期属性来解决。日期可以是当前系统日期。
我正在尝试将字符串转换为日期,但 NSDateFormatter returns 对于特定日期为 nil。在下面的代码中,除了 date2 和 date7 之外,所有字符串都转换为 Date。关于什么是错误的任何指示?谢谢
let date1 = "Jan 01, 1941"
let date2 = "Oct 01, 1941"
let date3 = "Oct 13, 1941"
let date4 = "Sep 30, 1941"
let date5 = "Mar 31, 1941"
let date6 = "Oct 02, 1941"
let date7 = "Oct 01, 1941"
let dateStringFormatter = DateFormatter()
dateStringFormatter.dateFormat = "MMM dd, yyyy" //Using custom
dateStringFormatter.locale = Locale(identifier: "en_US_POSIX")
let date_1 : Date? = dateStringFormatter.date(from: date1)
let date_2 : Date? = dateStringFormatter.date(from: date2)
let date_3 : Date? = dateStringFormatter.date(from: date3)
let date_4 : Date? = dateStringFormatter.date(from: date4)
let date_5 : Date? = dateStringFormatter.date(from: date5)
let date_6 : Date? = dateStringFormatter.date(from: date6)
let date_7 : Date? = dateStringFormatter.date(from: date7)
print("\(String(describing: date_1)),\n\(String(describing: date_2)),\n\(String(describing: date_3)),\n\(String(describing: date_4)),\n\(String(describing: date_5)),\n\(String(describing: date_6)),\n\(String(describing: date_7))")
以上问题可以通过在DateFormatter上设置日期属性来解决。日期可以是当前系统日期。