使用SwiftDate的日期之间的小时数

时间:2017-06-14 16:01:56

标签: date swift3 swiftdate

使用SwiftDate lib获取2个日期之间的最简单方法是什么?

在这种情况下,时间可能是几天/分钟,或者下次我需要的任何时间。

我看到我可能会做(date1 - date2) / 60 * 60,但这感觉不对。

2 个答案:

答案 0 :(得分:2)

Calendar可以做到这一点:

let calendar = Calendar.current
let components = calendar.dateComponents([.hour], from: date1, to: date2)
let hours = components.hour!

或作为一个班轮:

let hours = Calendar.current.dateComponents([.hour], from: date1, to: date2).hour!

Date扩展程序:

extension Date {

    func hoursSince(date: Date) -> Int
    {
        return Calendar.current.dateComponents([.hour], from: date, to: self).hour!
    }
}

答案 1 :(得分:2)

在SwiftDate中,您可以轻松完成

(date1 - date2).in(.hour)