Swift Date
(или NSDate
) - это класс в среде Foundation.Согласно документам:
Структура Date предоставляет методы для сравнения дат, вычисления временного интервала между двумя датами и создания новой даты из временного интервала относительно другой даты.Используйте значения даты в сочетании с экземплярами DateFormatter для создания локализованных представлений дат и времени и с экземплярами календаря для выполнения арифметики календаря.
Таким образом, вы захотите использоватьCalendar
класс для преобразования даты.Примерно так должно работать:
func getDateTimeForHoursInTheFuture(hours: Int) -> Date {
var components = DateComponents();
components.setValue(hours, for: .hour);
let date: Date = Date();
let expirationDate = Calendar.current.date(byAdding: components, to: date);
return expirationDate!;
}
Конечно, его можно изменить на работу с минутами и секундами, а не часами.
Вы можете отформатировать вывод, используя:
extension Date {
func toDateTimeString() -> String {
let formatter = DateFormatter();
formatter.dateFormat = "yyyy-MM-dd HH:mm:ss";
let myString = formatter.string(from: self);
return myString;
}
}
Просто вызовите метод toDateTimeString()
для результата функции getDateTimeForHoursInTheFuture
.