Utilia

Převodník JSON na CSV

Převáděj JSON na CSV a CSV zpět na JSON ve svém prohlížeči. Vnořené klíče se zploští do sloupců, oddělovače se rozpoznají a nic se nenahrává.

Převod

Jak používat převodník JSON na CSV

  1. Zvol směr: JSON → CSV nebo CSV → JSON.
  2. Vlož data do vstupního pole, nebo klikni na Otevřít soubor a načti ze svého počítače soubor .json, .csv či .tsv (do 10 MB).
  3. Vyber Oddělovač. Při čtení CSV ho Rozpoznat automaticky obvykle najde správně, při zápisu CSV se v automatickém režimu použije čárka.
  4. Uprav možnosti pro aktuální směr a klikni na Převést. Výsledek se aktualizuje i při psaní.
  5. Výsledek zkopíruj nebo stáhni. Obrátit směr přesune výstup zpět do vstupu, takže ho můžeš převést opačným směrem.

Z JSON do CSV

Soubor CSV je plochá tabulka: jeden řádek záhlaví s názvy sloupců a jeden řádek na záznam. JSON je strom, takže převodník musí rozhodnout, jak se záznamy a vnořené hodnoty změní na řádky a sloupce.

  • Pole objektů se změní na jeden řádek na objekt. Sloupce jsou sjednocením všech klíčů v pořadí, v jakém se poprvé objeví, takže objekt, kterému klíč chybí, dostane prostě prázdnou buňku.
  • Objekt s jedinou vlastností typu pole, například {"items": [ … ]}, což je běžný tvar odpovědí API, se rozbalí a každá položka se stane řádkem. Jakýkoli jiný objekt se změní na jediný řádek.
  • Pole polí už je tabulka a zapíše se tak, jak je, bez řádku záhlaví.
  • Při zapnuté volbě Zploštit vnořené klíče (address.city) se vnořené objekty změní na názvy sloupců s tečkami: {"address": {"city": "Lyon"}} vytvoří sloupec address.city. Pole dostanou sloupce s indexy: tags.0, tags.1… Při vypnuté volbě se vnořené hodnoty zapíšou do jediné buňky jako text JSON.

Hodnoty obsahující oddělovač, uvozovky nebo konce řádků se uvozují podle RFC 4180, formátu, který čtou Excel, LibreOffice i Google Sheets. null se změní na prázdnou buňku.

Ochrana před vzorci v tabulkách

Buňka začínající znakem =, +, - nebo @ se může po otevření CSV v tabulkovém procesoru spustit jako vzorec. Říká se tomu CSV injection. Pokud data pocházejí od uživatelů nebo z jiných nedůvěryhodných zdrojů, zapni Chránit před vzorci v tabulkách: takové textové buňky dostanou na začátek apostrof, aby je tabulkový procesor zobrazil jako prostý text.

Z CSV do JSON

  • První řádek je záhlaví změní každý řádek na objekt s klíči podle názvů sloupců. Vypnutím získáš pole polí.
  • Převádět čísla a logické hodnoty udělá z 42 číslo a z true logickou hodnotu a prázdné buňky změní na null. Vypnutím zachováš každou hodnotu jako řetězec, což uchová počáteční nuly u PSČ nebo telefonních čísel.
  • Obnovit vnořené objekty z hlaviček s tečkami vrací zploštění zpět: hlavičky address.city a tags.0 vytvoří {"address": {"city": …}, "tags": [ … ]}. Cesta JSON → CSV → JSON tak u typických dat vrátí původní strukturu.

Pokud mají některé řádky víc nebo méně polí než záhlaví, převod přesto proběhne, ale upozornění ukáže řádek prvního nepravidelného řádku, abys ho mohl zkontrolovat.

Časté dotazy

Nahrávají se moje data někam?

Ne. Převod probíhá celý ve tvém prohlížeči. Nic, co vložíš nebo otevřeš, se neodesílá na server, takže můžeš bezpečně převádět exporty obsahující údaje o zákaznících nebo interní data.

Proč Excel zobrazuje moje CSV v jediném sloupci?

Excel používá oddělovač seznamu z nastavení systému. V mnoha evropských jazykových nastaveních, včetně českého, je tímto oddělovačem středník. Před převodem zvol jako oddělovač Středník (;), nebo použij import v Excelu a vyber čárku.

Jak se zpracovávají vnořená pole objektů?

Při zapnutém zploštění dostane každý prvek vlastní sadu sloupců, například orders.0.id a orders.1.id. U krátkých polí to funguje dobře. U dlouhých seznamů je často lepší převést takové pole samostatně, aby se každý prvek stal řádkem.

Proč moje PSČ přišla o počáteční nulu?

Když je zapnuto Převádět čísla a logické hodnoty, 01234 se čte jako číslo 1234. Vypnutím volby zachováš každou hodnotu přesně tak, jak je napsána v CSV.

Jaká je maximální velikost?

Otevřít lze soubory do 10 MB. Větší vložené texty také fungují, ale prohlížeč se u velmi velkých textových polí zpomaluje, proto obří soubory nejdřív rozděl.