CSVImporter: Arbeiten mit CSV in Swift

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 CSVImporter und warum wird es benötigt?

CSVImporter ist eine leichtgewichtige Bibliothek für Swift (iOS/macOS), die den Import, das Parsen und den Export von CSV-Dateien vereinfacht. Im Gegensatz zu standardmäßigem Foundation bietet CSVImporter fertige Werkzeuge zur Verarbeitung großer tabellarischer Daten, zur automatischen Erkennung von Trennzeichen und zur Arbeit mit Kodierungen. Die Bibliothek eignet sich ideal für Anwendungen, die das Laden von Daten aus externen Quellen erfordern: Buchhaltungsberichte, Kontaktlisten, Datensätze für maschinelles Lernen oder Konfigurationsdateien.

Installation

CSVImporter wird über den Swift Package Manager installiert. Fügen Sie die Abhängigkeit in Package.swift hinzu:

.package(url: "https://github.com/Flinesoft/CSVImporter.git", from: "1.9.0")

Oder über Xcode: File → Add Packages → fügen Sie die Repository-URL ein.

Hauptfunktionen

  • Automatische Trennzeichenerkennung — unterstützt werden Kommas, Semikolons, Tabulatoren.
  • Streaming-Parsing — verarbeitet Dateien jeder Größe, ohne sie vollständig in den Speicher zu laden.
  • Kodierungsunterstützung — UTF-8, Windows-1251, ISO Latin-1.
  • Flexible Typisierung — Konvertierung von Zeichenfolgen in Int, Double, Date und benutzerdefinierte Strukturen.
  • Export — Erstellung von CSV aus Arrays von Wörterbüchern.

Beispielcode in Swift

import CSVImporter

// Import aus einer Dateilet path = Bundle.main.path(forResource: "data", ofType: "csv")!let importer = CSVImporter<[String]>(path: path)let records = importer.importRecords { $0 } // [["Name", "Age"], ["Alice", "30"], ...]

// Parsen mit Kopfzeilenlet structured = importer.importRecords { record in return Person(name: record[0], age: Int(record[1]) ?? 0)}

// Exportlet data = [["Name", "Age"], ["Bob", "25"]]let csvString = data.csvString() // "Name,AgeBob,25"try? csvString.write(to: URL(fileURLWithPath: "/tmp/output.csv"), atomically: true, encoding: .utf8)

Wann sollte CSVImporter verwendet werden?

  • Bei der Arbeit mit tabellarischen Daten aus Excel/Google Sheets.
  • In Anwendungen zur Finanzanalyse, Bestandsverwaltung oder Statistikführung.
  • Bei der Datenmigration zwischen Diensten (z. B. Import von Kontakten aus CSV).
  • In macOS-Dienstprogrammen zur Verarbeitung von Logs oder Konfigurationen.

Die Bibliothek ist stabil, hat eine 100%ige Testabdeckung und wird seit 2016 von der Community unterstützt. Geeignet für iOS 13+, macOS 10.15+.

Empfehlungen