Вопрос:

dateFromString () возвращает неверную дату

swift nsdate nsdateformatter

1547 просмотра

2 ответа

1248 Репутация автора

Я пытаюсь преобразовать строку в дату, но это приводит к неправильной дате.

let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd MMM YYYY"
let dt = dateFormatter.dateFromString("17 Sep 2015")
println("Date : \(dt)") 

Это результат

Date : Optional(2014-12-20 18:30:00 +0000)

Пожалуйста, дайте мне знать, где я делаю ошибку. Я пробовал другой формат тоже, но он возвращает ноль.

Автор: Ankita Shah Источник Размещён: 17.09.2015 01:23

Ответы (2)


0 плюса

22111 Репутация автора

Ваша строка формата даты неверна. Измените это на следующее:

dateFormatter.dateFormat = "dd MMM yyyy"

Для получения дополнительной информации прочтите документацию по форматированию даты .

Автор: Adam Размещён: 17.09.2015 01:28

3 плюса

101806 Репутация автора

Решение

Формат года неверен, должно быть yyyy, нет YYYY.

«Y»: год (в календарях «Неделя года»). Это обозначение этого года используется в календаре год-неделя ИСО, как это определено в ИСО 8601, но может использоваться в негригорианских календарных системах, где требуется обработка даты недели. Может не всегда иметь одинаковое значение с календарным годом .

Смотрите: Поле даты SymbolTable.
Также: даты и время форматирования ICU

Автор: zaph Размещён: 17.09.2015 01:30
Вопросы из категории :
32x32