📜  将 secondsfrom1970 转换为日期 swift (1)

📅  最后修改于: 2023-12-03 15:09:32.671000             🧑  作者: Mango

将 secondsfrom1970 转换为日期 Swift

在 Swift 中,我们可以使用 Date() 函数来获取当前的日期时间。但有时候我们需要将自然数或时间戳转换为日期,这时候就需要用到 DateFormatter() 了。

步骤
  1. 首先,我们需要获取自1970年1月1日以来的自然数或时间戳,这个数值很常见,我们称之为 secondsfrom1970。
  2. 接着,我们需要创建一个 DateFormatter 对象,来指定日期时间的格式。
  3. 然后,我们将 secondsfrom1970 输入到 Date(timeIntervalSince1970:) 函数中,来获取日期。
  4. 最后,我们使用 DateFormatter 对象的 string(from: Date) 方法将日期转换为字符串并输出。

下面是示例代码:

let secondsfrom1970: TimeInterval = 1626369680  // 2021年7月15日18:41:20

let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"

let dateFrom1970 = Date(timeIntervalSince1970: secondsfrom1970)
let dateString = dateFormatter.string(from: dateFrom1970)

print(dateString)  // 输出:2021-07-15 18:41:20
解释

在上述代码中,我们首先定义了一个变量 secondsfrom1970 来表示自1970年1月1日以来经过的秒数。这个数值可以通过当前时间 Date().timeIntervalSince1970 得到。

接着,我们创建了一个 DateFormatter 对象,并使用 dateFormat 属性来指定日期时间的格式(例如:年份为 "yyyy",月份为 "MM",日为 "dd",小时为 "HH",分钟为 "mm",秒为 "ss")。

然后,我们将 secondsfrom1970 作为参数传递到 Date(timeIntervalSince1970:) 函数中,来获取对应的日期时间。

最后,我们使用 DateFormatter 对象的 string(from: Date) 方法将日期时间转换为字符串,输出到控制台中。

总结

将 secondsfrom1970 转换为日期 Swift 的方法很简单,主要就是通过 DateFormatter 对象指定日期时间格式,然后将秒数输入到 Date(timeIntervalSince1970:) 函数中来获取日期,最后再将日期转换为字符串即可。