Tutti gli articoli

JSON ↔ YAML/CSV/XML/TOML: quando e perché convertire

Esportando JSON in CSV e aprendo il file in Excel con impostazioni regionali italiane, i numeri con il punto decimale come 3.14 vengono spesso interpretati male — perché in Italia la virgola è il separatore decimale, e Excel si aspetta quindi il punto e virgola (;) come separatore di colonne al posto della virgola.

A cosa serve ogni formato

  • YAML — indentazione al posto delle parentesi graffe, lo standard per pipeline CI/CD, Kubernetes e Docker Compose.
  • CSV — piatto e tabellare, il minimo comune denominatore per fogli di calcolo e strumenti di analisi.
  • XML — più datato, con attributi e namespace, ancora alla base dei servizi SOAP e di molti sistemi aziendali legacy.
  • TOML — pensato per essere non ambiguo e facile da modificare a mano, noto soprattutto grazie al Cargo.toml di Rust.

Perché il CSV può sembrare "rotto" aprendolo in Excel italiano

Excel decide il separatore dei campi CSV in base alle impostazioni regionali del sistema. Con la virgola come separatore decimale (lo standard in Italia), Excel si aspetta il punto e virgola tra le colonne, non la virgola. Un file esportato con le virgole può apparire come un'unica lunga colonna aprendolo con un doppio clic — il selettore del delimitatore di questo convertitore permette di scegliere in anticipo il punto e virgola per evitarlo.

La trappola della tipizzazione automatica in YAML

Il parser YAML cerca di indovinare il tipo di un valore senza virgolette: version: 1.20 può diventare il numero 1.2, perdendo lo zero finale, e il testo NO può diventare il booleano false secondo le regole di YAML 1.1, che trattavano yes/no come letterali booleani. I valori che devono restare testo vanno racchiusi esplicitamente tra virgolette prima della conversione in JSON.

A cosa serve in pratica

  • Spostare una configurazione da uno strumento che si aspetta YAML a uno che si aspetta JSON, o viceversa.
  • Esportare dati da un'API in CSV per controllarli rapidamente in un foglio di calcolo.
  • Collegare un sistema legacy basato su XML/SOAP a un'API JSON moderna.
Prova lo strumento