我正在尝试解析此DateTime,但无法检测格式,并且解析也没有运气。看起来如下:
20190507T000000.000
我尝试了所有我能想到的格式,但是说实话,我对日期格式的理解还很遥远。我尝试将此格式设置为dateFormatter,因为我认为它最接近它:
"yyyyMMddTHHmmss.sss"
而且,我尝试使用ISO8601DateFormatter()
,但没有给我任何好处。我猜这个DateTime是某个UTC日期。
创建了String的一个扩展名。
extension String {
public func dateIn(formate: String, inGTM: Bool) -> Date { // gives in same formate
if self.isEmpty { return Date() }
let formatter = DateFormatter()
formatter.timeZone = TimeZone(abbreviation: inGTM ? "GTM" : "UTC")
formatter.dateFormat = formate
if let dt = formatter.date(from: self) {
return dt
}
return Date()
}
}
使用方法:
let stringValue : String = "20190507T000000.000"
print(stringValue.dateIn(formate: "yyyyMMddTHHmmss.sss", inGTM: true))