EMZETT.
Login

Dateiformate für Konfiguration und Daten (YAML, JSON, XML, TOML, CSV)

Kurz: Für Einstellungen und Daten gibt es lesbare Textformate. Die wichtigsten: YAML (.yml), JSON, XML, TOML, INI und CSV. Sie unterscheiden sich in Lesbarkeit, Funktionsumfang und Strenge.

Genauer: Alle sind Text und lassen sich mit jedem Editor öffnen. Welches passt, hängt vom Einsatz ab: Konfiguration für Menschen (YAML, TOML), Datenaustausch zwischen Programmen (JSON, XML), Tabellen (CSV).

Im Detail

  • YAML: Einrückung statt Klammern, Kommentare mit #, beliebt für CI und Docker, siehe yaml. Einrückungsfehler sind häufig, Tabs sind verboten.
  • JSON: Strikt, Schlüssel in Anführungszeichen, keine Kommentare. Standard für Web-APIs.
  • XML: Verschachtelte Tags, mit Schema prüfbar, wortreich. Üblich in älteren Systemen, SVG, Office-Dateien.
  • TOML: Wie INI, aber mit Typen, genutzt bei Rust (Cargo.toml) und Python (pyproject.toml).
  • INI: Einfache Abschnitte mit schlüssel=wert.
  • CSV: Tabelle mit Trennzeichen (Komma oder Semikolon), kein Typ, keine Verschachtelung. Excel in Deutschland nutzt oft Semikolon.
  • Binär-Formate: Protobuf, MessagePack, Parquet sind kompakter, aber nicht direkt lesbar.
  • Wahl: Für Menschen lesbar bitte YAML/TOML, für Maschinen JSON.

Siehe auch: yaml, GitLab