Utilia

JSON–CSV-muunnin

Muunna JSON CSV:ksi ja CSV takaisin JSONiksi selaimessa. Sisäkkäiset avaimet litistetään sarakkeiksi, erottimet tunnistetaan, eikä mitään lähetetä palvelimelle.

Muunnos

Näin käytät JSON–CSV-muunninta

  1. Valitse suunta: JSON → CSV tai CSV → JSON.
  2. Liitä datasi syötekenttään tai napsauta Avaa tiedosto ladataksesi .json-, .csv- tai .tsv-tiedoston tietokoneeltasi (enintään 10 Mt).
  3. Valitse Erotin. CSV:tä luettaessa Tunnista automaattisesti löytää yleensä oikean, ja CSV:tä kirjoitettaessa automaattinen tunnistus käyttää pilkkua.
  4. Säädä nykyisen suunnan asetukset ja napsauta Muunna. Tulos päivittyy myös kirjoittaessasi.
  5. Kopioi tulos tai lataa se. Vaihda suunta siirtää tuloksen takaisin syötteeksi, jotta voit muuntaa sen toiseen suuntaan.

JSONista CSV:ksi

CSV-tiedosto on litteä taulukko: yksi otsikkorivi sarakkeiden nimillä ja yksi rivi kutakin tietuetta kohden. JSON on puu, joten muuntimen on päätettävä, miten tietueista ja sisäkkäisistä arvoista tulee rivejä ja sarakkeita.

  • Olioiden taulukko muuttuu yhdeksi riviksi oliota kohden. Sarakkeet ovat kaikkien avainten yhdiste siinä järjestyksessä, jossa ne ensimmäisen kerran esiintyvät, joten olio, jolta avain puuttuu, saa yksinkertaisesti tyhjän solun.
  • Olio, jossa on yksi taulukko-ominaisuus, kuten {"items": [ … ]}, yleinen rajapintavastausten muoto, puretaan, ja jokaisesta alkiosta tulee rivi. Mikä tahansa muu olio muuttuu yhdeksi riviksi.
  • Taulukoiden taulukko on jo taulukko, ja se kirjoitetaan sellaisenaan ilman otsikkoriviä.
  • Kun Litistä sisäkkäiset avaimet (address.city) on käytössä, sisäkkäisistä olioista tulee pisteellisiä sarakenimiä: {"address": {"city": "Lyon"}} tuottaa sarakkeen address.city. Taulukot saavat indeksisarakkeet: tags.0, tags.1… Kun valinta on pois päältä, sisäkkäiset arvot kirjoitetaan yhteen soluun JSON-tekstinä.

Arvot, jotka sisältävät erottimen, lainausmerkkejä tai rivinvaihtoja, lainataan RFC 4180:n mukaisesti: tätä muotoa Excel, LibreOffice ja Google Sheets lukevat kaikki. null muuttuu tyhjäksi soluksi.

Suojaus taulukkolaskennan kaavoilta

Solu, joka alkaa merkillä =, +, - tai @, voidaan suorittaa kaavana, kun CSV avataan taulukkolaskentaohjelmassa. Tätä kutsutaan CSV-injektioksi. Jos datasi tulee käyttäjiltä tai muista epäluotettavista lähteistä, ota käyttöön Suojaa taulukkolaskennan kaavoilta: tällaisten tekstisolujen eteen lisätään heittomerkki, jolloin taulukkolaskenta näyttää ne pelkkänä tekstinä.

CSV:stä JSONiksi

  • Ensimmäinen rivi on otsikkorivi muuttaa jokaisen rivin olioksi, jonka avaimina ovat sarakkeiden nimet. Poista valinta saadaksesi taulukoiden taulukon.
  • Muunna luvut ja totuusarvot muuttaa 42:n luvuksi ja true:n totuusarvoksi sekä tyhjät solut arvoksi null. Poista valinta pitääksesi jokaisen arvon merkkijonona, mikä säilyttää etunollat postinumeroissa tai puhelinnumeroissa.
  • Rakenna sisäkkäiset oliot pisteellisistä otsikoista kumoaa litistyksen: otsikot address.city ja tags.0 tuottavat {"address": {"city": …}, "tags": [ … ]}. Edestakainen muunnos JSON → CSV → JSON palauttaa siis tyypillisellä datalla alkuperäisen rakenteen.

Jos joillakin riveillä on enemmän tai vähemmän kenttiä kuin otsikossa, muunnos silti toimii, mutta varoitus näyttää ensimmäisen epäsäännöllisen rivin numeron, jotta voit tarkistaa sen.

Usein kysytyt kysymykset

Lähetetäänkö tietoni minnekään?

Ei. Muunnos tapahtuu kokonaan selaimessasi. Mitään liittämääsi tai avaamaasi ei lähetetä palvelimelle, joten voit muuntaa turvallisesti vientejä, jotka sisältävät asiakas- tai sisäisiä tietoja.

Miksi Excel näyttää CSV:ni yhdessä sarakkeessa?

Excel käyttää järjestelmäsi luettelonerotinta. Suomessa ja monissa muissa Euroopan maissa erotin on puolipiste. Valitse erottimeksi Puolipiste (;) ennen muuntamista tai käytä Excelin tuontivelhoa ja valitse pilkku.

Miten sisäkkäiset olioiden taulukot käsitellään?

Litistyksen ollessa käytössä jokainen alkio saa oman sarakejoukkonsa, esimerkiksi orders.0.id ja orders.1.id. Tämä toimii hyvin lyhyille taulukoille. Pitkille luetteloille on usein parempi muuntaa kyseinen taulukko erikseen, jolloin jokaisesta alkiosta tulee rivi.

Miksi postinumeroni menettivät etunollan?

Kun Muunna luvut ja totuusarvot on käytössä, 01234 luetaan lukuna 1234. Poista valinta, jos haluat säilyttää jokaisen arvon täsmälleen sellaisena kuin se on CSV:ssä.

Mikä on enimmäiskoko?

Tiedostoja 10 Mt:iin asti voi avata. Suuremmatkin liitokset toimivat, mutta selain hidastuu hyvin suurilla tekstikentillä, joten jaa valtavat tiedostot ensin.