При преобразовании «2019-04-25 15:31:22» в формат даты «МММ дд гггг, чч: мм», приложение вылетает в симуляторе, но отлично работает на устройстве.
Тема1: Неустранимая ошибка: неожиданно обнаружен ноль при развертывании необязательного значения
func convertToString (dateString: String, formatIn : String, formatOut : String) -> String {
let dateFormater = DateFormatter()
dateFormater.timeZone = (NSTimeZone(abbreviation: "IST")! as TimeZone)
dateFormater.dateFormat = formatIn
let date = dateFormater.date(from: dateString)
dateFormater.timeZone = NSTimeZone.system
dateFormater.dateFormat = formatOut
let timeStr = dateFormater.string(from: date!)
return timeStr
}
Печать описания timeStr:
выражение вызвало ошибку: ошибка: выполнение было прервано, причина: Фатальная ошибка: неожиданно обнаружен ноль при развертывании необязательного значения.Процесс был возвращен в состояние перед вычислением выражения.
Хотите понять, convertToString
- это правильный код.
Один выходной ответ службы в формате "yyyy-MM-dd hh:mm:ss"
и других службформат ответа: "yyyy-MM-dd'T'HH:mm:ss'Z'"
let convertedFormat = convertToString(dateString: lastTime,
formatIn: "yyyy-MM-dd hh:mm:ss", formatOut: "MMM dd yyyy, hh:mm")
let convertedDate = convertToString(dateString: headline.publishedAt!, formatIn: "yyyy-MM-dd'T'HH:mm:ss'Z'", formatOut: "MMMM dd yyyy, hh:mm")
cell.lbl_NewsDate?.text = convertedDate
Я хочу использовать функцию общего утилиты-конвертера для отображения результирующего времени в "МММ дд гггг, чч: мм" пример 26 апреля2019, 23: 32
Результирующее время необходимо показать на основе «Индийского стандартного времени».