Arbeiten mit Daten in Swift: Foundation und DateFormatter

Online Python-Trainer für Anfänger

Lernen Sie Python einfach ohne theoretische Überlastung. Lösen Sie praktische Aufgaben mit automatischer Überprüfung und schreiben Sie Code direkt im Browser.

Kurs starten

Was ist das und wozu braucht man es?

Swift ist eine moderne Programmiersprache von Apple für iOS, macOS, watchOS und tvOS. Die Arbeit mit Daten ist eine der Kernaufgaben in der mobilen und Desktop-Entwicklung: von der Anzeige der Uhrzeit in Chats bis zur Berechnung von Fristen in Apps. Swift hat keine separate Bibliothek für Daten – die gesamte Funktionalität ist in das Framework Foundation integriert. Es stellt die Klassen Date, DateFormatter, Calendar und DateComponents bereit, mit denen Sie Daten erstellen, formatieren, vergleichen und manipulieren können.

Wie installiert man es?

Foundation ist Teil der Swift-Standardbibliothek, daher ist keine Installation erforderlich. Importieren Sie einfach das Modul in Ihre Datei: import Foundation. Für die Arbeit mit Daten in iOS/macOS-Projekten (über Xcode) sind keine zusätzlichen Abhängigkeiten nötig.

Grundlegende Funktionen

  • Datum erstellen: Date() – aktuelles Datum und Uhrzeit; Date(timeIntervalSinceNow:) – Datum in N Sekunden.
  • Formatierung: DateFormatter – Umwandlung eines Datums in einen String (lokalisierte Ausgabe) und umgekehrt.
  • Datumsbestandteile: Calendar.current.dateComponents([.year, .month, .day], from: date) – Extrahieren von Jahr, Monat, Tag.
  • Vergleich: Operatoren ==, <, > sowie compare().
  • Manipulationen: Calendar.current.date(byAdding: .day, value: 7, to: date) – Hinzufügen von 7 Tagen.

Codebeispiel in Swift (iOS/macOS)

import Foundation

// Aktuelles Datumlet now = Date()print("Jetzt: \\(now)")

// Formatierung in einen lokalisierten Stringlet formatter = DateFormatter()formatter.dateStyle = .longformatter.timeStyle = .shortformatter.locale = Locale(identifier: "de_DE")let formatted = formatter.string(from: now)print("Formatiertes Datum: \\(formatted)")

// Extrahieren des Wochentagslet calendar = Calendar.currentlet weekday = calendar.component(.weekday, from: now)print("Wochentag (1=Sonntag): \\(weekday)")

// Hinzufügen von 3 Tagenif let futureDate = calendar.date(byAdding: .day, value: 3, to: now) { print("In 3 Tagen: \\(formatter.string(from: futureDate))")}

// Parsen eines Stringsformatter.dateFormat = "yyyy-MM-dd"if let parsedDate = formatter.date(from: "2025-12-31") { print("Geparst: \\(parsedDate)")}

Wann verwenden?

Verwenden Sie die integrierten Foundation-Werkzeuge immer dann, wenn Sie in Swift mit Daten arbeiten müssen: Anzeige von Zeiten in der UI, Berechnung von Differenzen zwischen Daten, Erstellung von Kalendern, Erinnerungen, Timern, Ereignisprotokollierung. Für komplexe Szenarien (z. B. Arbeit mit Zeitzonen oder wiederkehrenden Ereignissen) kombinieren Sie DateComponents und Calendar. Alternative Drittanbieter-Bibliotheken (z. B. SwiftDate) existieren, aber für die meisten Projekte ist Foundation ausreichend.

Empfehlungen