Avatar ·

Wie man Datum/Uhrzeit mit Bruchteilen von Sekunden und UTC im ISO 8601 / RFC 3339 Format in Swift parst und erstellt

Hallo zusammen! Ich bin neu in Swift und habe ein Problem bei der Arbeit mit Daten. Ich muss Zeitstempel im ISO 8601 Format mit Bruchteilen von Sekunden und der Zeitzone UTC an den Server senden und vom Server empfangen. Ein Beispiel für einen solchen String: "2024-03-15T14:30:45.123Z". Das Problem ist, dass der standardmäßige `DateFormatter` in Swift Bruchteile von Sekunden nicht immer korrekt verarbeitet. Ich habe diesen Code ausprobiert: ```swift let dateString = "2024-03-15T14:30:45.123Z" let formatter = DateFormatter() formatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSSZ" if let date = formatter.date(from: dateString) { print("Date: \(date)") } else { print("Failed to parse") } ``` Aber das funktioniert nicht zuverlässig. Manchmal funktioniert das Parsen, manchmal nicht. Besonders wenn sich die Anzahl der Ziffern nach dem Punkt ändert (z.B. ".12" oder ".123456"). Ich habe auch `ISO8601DateFormatter` ausprobiert, aber auch dort gibt es Schwierigkeiten mit Bruchteilen von Sekunden. Ich brauche: 1) Zuverlässiges Parsen von Strings mit Bruchteilen von Sekunden unterschiedlicher Genauigkeit (von 1