Hier eine einfache Funktion mit der Du ein Date in ein deutsches Datumsformat als Stirng konvertieren kannst. Das in deutschland übliche Format sieht so aus: „dd.MM.yyyy hh:mm:ss“
Natürlich kannst Du das auch durch andere Formate prolbemlos ersetzen.
public static func ConvertDateToGermanFormat(DateValue: Date) - String { let df = DateFormatter() //Nun legen wir das in Deutschland übliche Format fest df.dateFormat = "dd.MM.yyyy hh:mm:ss" //aus dem Date erzeugen wir wiederum ein String let sNewDateFormat = df.string(from: DateValue) return sNewDateFormat }
Gibt nur das Datum im lokalen Format je nach Nutzer einstellung aus.
Das Ergebnis kann wie folgt aussehen: “12/31/2019”
let today = Date() let formatter1 = DateFormatter() formatter1.dateStyle = .short print(formatter1.string(from: today))
Hier die Ausgabe von Datum und Uhrzeit abhängig von den regionalen Einstellungen:
Das Ergebnis kann so aussehen: “20:27:32” or “8:27:32pm”
let formatter2 = DateFormatter() formatter2.timeStyle = .medium print(formatter2.string(from: today))
Hier ein paar fertige Datumsfunktionen in einer Klasse:
class Tools { public static func ConvertDateToGermanFormat(DateValue: Date) -> String { let df = DateFormatter() //Nun legen wir das in Deutschland übliche Format fest df.dateFormat = "dd.MM.yyyy HH:mm:ss" //aus dem Date erzeugen wir wiederum ein String let sNewDateFormat = df.string(from: DateValue) return sNewDateFormat } public static func ConvertDateOnlyFormat(DateValue: Date) -> String { let df = DateFormatter() //Nun legen wir das in Deutschland übliche Format fest df.dateFormat = "dd.MM.yyyy" //aus dem Date erzeugen wir wiederum ein String let sNewDateFormat = df.string(from: DateValue) return sNewDateFormat } public static func ConvertDateToLocalFormat(DateValue: Date) -> String { let formatter = DateFormatter() formatter.timeStyle = .medium return formatter.string(from: DateValue) } public static func ConvertDateToLocalDateOnlyFormat(DateValue: Date) -> String { let formatter = DateFormatter() formatter.dateStyle = .medium return formatter.string(from: DateValue) } public static func ConvertStringToDate(DateValue: String) -> Date { let formatter = DateFormatter() let dValue = DateValue //formatter.locale = Locale(identifier: "en_US_POSIX") formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ" var date = formatter.date(from: dValue) if (date==nil) { formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ" date = formatter.date(from: dValue) } return date! } }
Über den Autor