Beim Export von JSON nach CSV und Öffnen in Excel mit deutschen Regionaleinstellungen werden Zahlen mit Dezimalpunkt wie 3.14 oft falsch interpretiert — weil in Deutschland das Komma als Dezimaltrennzeichen gilt und Excel dann Semikolon (;) statt Komma als Spaltentrennzeichen erwartet.
Wofür jedes Format gedacht ist
- YAML — Einrückung statt Klammern, Standard in CI/CD-Pipelines, Kubernetes-Manifesten und Docker-Compose-Dateien, weit verbreitet in der deutschen DevOps-Praxis.
- CSV — flach und tabellarisch, der kleinste gemeinsame Nenner für Tabellenkalkulationen und Analysetools.
- XML — älter, mit Attributen und Namensräumen, immer noch das Rückgrat von SOAP-Diensten und vielen Legacy-Systemen in Behörden und Unternehmen.
- TOML — eindeutig und leicht von Hand editierbar, bekannt vor allem durch
Cargo.tomlin Rust.
Warum die CSV-Ausgabe in deutschem Excel "kaputt" aussehen kann
Excel bestimmt das Feldtrennzeichen der CSV-Datei anhand der Systemregion. Mit Komma als Dezimaltrennzeichen (Standard in Deutschland, Österreich und der Schweiz) erwartet Excel Semikolon zwischen den Spalten, nicht Komma. Eine mit Kommas exportierte Datei kann per Doppelklick geöffnet als eine einzige lange Spalte erscheinen — der Trennzeichen-Auswahl dieses Konverters erlaubt es, vorab Semikolon einzustellen.
Die Falle der automatischen Typerkennung in YAML
Der YAML-Parser rät den Typ eines Werts ohne Anführungszeichen: version: 1.20 kann zur Zahl 1.2 werden und dabei die abschließende Null verlieren, und der Text NO wird nach den Regeln von YAML 1.1 zum booleschen false, da yes/no dort als boolesche Literale galten. Werte, die als Text erhalten bleiben sollen, sollten vor der Konvertierung zu JSON explizit in Anführungszeichen gesetzt werden.
Wofür das in der Praxis gebraucht wird
- Eine Konfiguration zwischen einem Tool, das YAML erwartet, und einem, das JSON erwartet, übertragen — oder umgekehrt.
- API-Daten nach CSV exportieren, um sie schnell in einer Tabellenkalkulation zu prüfen.
- Ein Legacy-System auf XML/SOAP-Basis mit einer modernen JSON-API verbinden.