Pour convertir la date et l'heure, j'ai utilisé ceci:
let formatter = NSDateFormatter()
formatter.calendar = NSCalendar(calendarIdentifier: NSCalendarIdentifierISO8601)
formatter.locale = NSLocale(localeIdentifier: "en_US_POSIX")
formatter.timeZone = NSTimeZone(forSecondsFromGMT: 0)
formatter.dateFormat = "M/dd/yyyy, h:mm"
formatter.AMSymbol = "AM"
formatter.PMSymbol = "PM"
let dateString = formatter.stringFromDate(model.courseDate)
print(dateString)
Si la date du cours est "courseDate =" 2017-01-09 01:00:00 +0000 ";" mais je reçois comme ceci en version imprimée: 1/09/2017, 1: sans AM ni PM.
Comment puis-je atteindre cet objectif?
Merci.
selon les spécifications du formateur de date
Vous pouvez récupérer une date au format 24h au lieu de demander AM/PM en utilisant HH au lieu de hh
la date "21/11/2016 01:30" (pm) serait donc "21/11/2016 13:30".
cependant, si vous devez imprimer le format, vous pouvez l'imprimer en utilisant:
une
Selon Apple formateur de date général, vous devez utiliser "M/jj/aaaa, hh: mm a" dans votre format de date.
comme:formatter.dateFormat = "M/dd/yyyy, hh:mm a"
J'espère que ceci vous aidera!
utiliser le code suivant peut vous aider pleinement
// Fonction d'appel
let dateTime = self.convertDateFormaterAamer(sendTimeStep, inputDateFormate: "dd-MM-yyyy HH:mm:ss", outputDateFormate: "dd-MMM-yyyy hh:mm a")
// Fonction date
func convertDateFormater(date: String,inputDateFormate: String , outputDateFormate: String) -> String
{
let dateFormatter = NSDateFormatter()
//dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ"
//dateFormatter.timeZone = NSTimeZone(name: "UTC")
dateFormatter.dateFormat = inputDateFormate
let date = dateFormatter.dateFromString(date)
//dateFormatter.dateFormat = "yyyy MMM EEEE HH:mm"
//dateFormatter.timeZone = NSTimeZone(name: "UTC")
dateFormatter.dateFormat = outputDateFormate
var timeStamp = ""
if (date != nil)
{
timeStamp = dateFormatter.stringFromDate(date!)
}
return timeStamp
}