如何将1640704675转换为日期。
extension Date {
var millisecondsSince1970:Int64 {
return Int64((self.timeIntervalSince1970 * 1000.0).rounded())
}
init(milliseconds:Int64) {
self = Date(timeIntervalSince1970: TimeInterval(milliseconds) / 1000)
}
}
//Convert date to another formate.
func dateConvertion(date: Date, dateFormat: String) -> String {
let dateFormater = DateFormatter()
dateFormater.dateFormat = dateFormat
dateFormater.locale = Locale(identifier: "en_US_POSIX")
let dateStr = dateFormater.string(from: date)
return dateStr
}尝试将10位数字的Int转换为日期//
if let modifiedDate = callValue?.updatedDate{
let dateValue = String(modifiedDate).toDate(.isoDateTimeMilliSec) ?? Date()
let finalDate = dateConvertion(date: dateValue, dateFormat: formaterMonthDateyear)
print("finalDate \(finalDate)")
}将int值转换为date时显示的当前日期值。
发布于 2022-01-12 15:38:46
正如注释中提到的,整数值似乎是1970年以来的数秒,而不是毫秒。只需使用现有的init(timeIntervalSince1970: TimeInterval)方法,并将整数转换为TimeInterval:
就这样叫它:
print(Date(timeIntervalSince1970: TimeInterval(1640704675)))正如注释中提到的,这将显示2021-12-28 15:17:55 +0000,它看起来像是最近的有效日期。
https://stackoverflow.com/questions/70683172
复制相似问题