У меня странная проблема между симулятором и реальным пробегом в iPhone 6+ с NSDateFormatter в быстром. Я пытаюсь преобразовать строку в определенном формате, я получаю в JSON, чтобы NSDate со следующим расширением:борется с NSDateFormatter в быстром
extension String {
var asStringDate: NSDate? {
get {
let dateFormatter = NSDateFormatter()
let offsetTime = NSTimeInterval(NSTimeZone.localTimeZone().secondsFromGMT) //support local timezone
dateFormatter.locale = NSLocale.currentLocale()
dateFormatter.dateFormat = "EEE, d MMM yyyy H:mm"
if let date = dateFormatter.dateFromString(self) {
let finalDate = date.dateByAddingTimeInterval(offsetTime) //support local timezone
// if Constants.debug { println("\(self) -> \(finalDate)") } //For debugging purposes
return finalDate
}
println("Error while formating string:'\(self)' to date in String.asStringDate") //For debugging purposes
return nil
}
}
по какой-то причине, на имитатор работает нормально, но во время работы с Xcode на моем iPhone я получаю ноль из
dateFormatter.dateFromString(self)
примера строки я получаю: "Fri, 19 Jun 2015 15:52" любых идей, почему он терпит неудачу в iPhone?
привет, у меня нет способа изменить формат на сервере, откуда я получаю данные, и ясно, что у меня проблема с языковой версией, поэтому я опубликовал код, ожидая, возможно, чтобы получить предложение об этом или о том, что я делаю неправильно, так как я думал, что обрабатываю код в коде. В любом случае, спасибо за помощь. – Gutty1
Ну, в случае, если вы не можете изменить формат ответа сервера, вы также можете попытаться жестко закодировать локаль для форматирования даты, например: 'dateFormatter.locale = NSLocale (localeIdentifier:" en_US ")'. Это должно сработать. – utogaria
это то, что я сделал, если вы видите, я вчера опубликовал ответ перед вашим сообщением, спасибо в любом случае – Gutty1