Я пытаюсь получить текущую дату в формате String. Просто свидание.
Вот код, и я ошибаюсь. Мне нужна строка в формате ГГГГ-мм-дд. Просто свидание.
let date = NSDate.date()
println(date)
let dateFormatter = NSDateFormatter()
var dateFormat = "yyyy-MM-dd"
println()
let timeZone = NSTimeZone(name: "UTC")
println(dateFormatter.stringFromDate(dateFormat)) // This string returns no value :(
И второй вопрос. Будет ли он возвращать дату, указанную на устройстве - текущий момент, или мне нужно указать часовой пояс, известное время в формате UTC или GMT + 1? Если у пользователя iOs есть правильная дата на его или ее устройстве, тогда указывать часовой пояс может не потребоваться? Лучшая практика здесь, пожалуйста.
Спасибо.
1 ответ
Основная ошибка заключается в том, что stringFromDate()
ожидает в качестве аргумента дату , а не формат даты. Вместо этого формат даты должен быть назначен свойству dateFormat
средства форматирования даты.
let date = NSDate.date()
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
let str = dateFormatter.stringFromDate(date)
println(str)
При этом дата будет напечатана с использованием часового пояса по умолчанию на устройстве. Только если вам нужен вывод в соответствии с другим часовым поясом, вы можете добавить, например,
dateFormatter.timeZone = NSTimeZone(name: "UTC")
Похожие вопросы
Новые вопросы
ios
iOS - мобильная операционная система, работающая на Apple iPhone, iPod touch и iPad. Используйте этот тег [ios] для вопросов, связанных с программированием на платформе iOS. Используйте связанные теги [target-c] и [swift] для проблем, характерных для этих языков программирования.
date
(которая содержит текущую дату) вообще не используется в следующих вычислениях ....