JSON naar TSV omzetten

Hier zet je JSON naar TSV om, gratis en zonder account: sleep het bestand hierboven erin en binnen een paar seconden staat het resultaat klaar om te downloaden. De omzetting gebeurt binnen je eigen browser, dus het bestand wordt nooit geüpload. Het werkt hetzelfde op Windows, macOS en Linux als op iPhone en Android, en het blijft werken als je de verbinding verbreekt.

  • Waar het draait In je browser. Het bestand wordt nooit geüpload.
  • Opnieuw opgebouwd TSV werkt anders dan JSON. Het is dus niet het geleidelijke kwaliteitsverlies van een lossy codec: wat TSV kan uitdrukken wordt getrouw weergegeven, en wat daar geen equivalent heeft blijft helemaal weg.
  • Maximale grootte Tot 100 MB per bestand, gratis en zonder account.
  • Goed om te weten Geneste objecten worden platgeslagen tot kolommen. Diep geneste gegevens verliezen hun vorm.

Tot 100 bestanden tegelijk. Verschillende formaten door elkaar is prima.

Voor wie deze omzetting bedoeld is

Deze pagina is niet zomaar een tweede JSON-naar-CSV. Die andere omzetting is voor iemand die een bestand opslaat om te openen of te importeren; deze is voor iemand wiens waarden komma’s bevatten en die het resultaat zo dadelijk in een cel van een spreadsheet gaat plakken.

Zelfde bron, ander moment, ander advies: bij plakken in een cel is een tab als scheidingsteken minder foutgevoelig dan een komma, omdat een komma in de waarde zelf dan niet met een kolomscheiding kan worden verward.

Wat er met een envelop-object gebeurt

Een object met precies één sleutel die een array bevat — zoals `{"records": [...]}` — wordt automatisch uitgepakt: de array binnenin wordt gebruikt als de rijenset, niet het buitenste object als geheel.

Dat is een bewuste eigenschap van deze specifieke omzetting, anders dan bij JSON naar NDJSON, waar zo’n envelop juist niet wordt uitgepakt — hetzelfde bronformaat krijgt op de twee pagina’s dus een ander antwoord, precies omdat het doel anders is.

Geneste objecten worden platte kolomnamen

Een genest object, zoals `{"adres": {"stad": "Utrecht"}}`, wordt platgeslagen tot een kolom met de naam `adres.stad`. Dat gebeurt op elk niveau van nesting, dus diep geneste structuren leveren lange, met punten gescheiden kolomnamen op.

De kolommen die uiteindelijk in het resultaat staan, zijn de unie van alle sleutels over alle records heen — een record dat een bepaald veld mist, krijgt daar simpelweg een lege cel voor in plaats van dat de kolom wegvalt.

Wat er met speciale tekens in waarden gebeurt

Een waarde die zelf een tab of een nieuwe regel bevat, wordt tussen dubbele aanhalingstekens gezet in het resultaat — dat voorkomt dat zo’n waarde per ongeluk als kolomscheiding of rij-einde wordt gelezen door de volgende stap.

Een gewone komma in een waarde heeft in een TSV geen speciale betekenis meer en wordt dus niet aangehaald — precies het probleem dat deze omzetting oplost ten opzichte van een gewone CSV.

Wat er ontbreekt, wordt een lege cel

Mist een record een veld dat in een ander record wel voorkomt, dan krijgt dat record een lege cel op die plek in plaats van dat de rij wordt overgeslagen. Elke rij in het resultaat komt overeen met precies één record uit de bron.

Voor gegevens met een wisselend aantal velden per record — vaak het geval bij een export die over tijd is uitgebreid — geeft dat een consistente tabel zonder rijen die verschuiven.

Waar het bestand blijft tijdens het omzetten

De omzetting draait volledig in de browser; het bestand wordt niet naar een server gestuurd. De limiet op het gratis plan is 100 MB per bestand.

Voor een groot exportbestand met veel records is dat ruim voldoende.

Batchgewijs meerdere exports voorbereiden

Tot honderd JSON-bestanden tegelijk kunnen in één sessie worden omgezet, elk met een eigen voortgangsindicator, en het resultaat komt terug als losse bestanden of als ZIP.

Dat is bruikbaar wanneer meerdere exports uit dezelfde bron dezelfde platslag- en scheidingstekenbehandeling nodig hebben.

Wanneer gewone CSV toch volstaat

Bevatten de waarden geen komma’s en gaat het resultaat niet direct in een spreadsheetcel geplakt worden, dan is een gewone CSV-omzetting net zo goed bruikbaar en misschien wel de meer gangbare keuze voor de meeste importsystemen.

TSV verdient hier specifiek de voorkeur bij waarden met komma’s of bij het plakken in een cel — buiten die twee gevallen maakt het weinig verschil.

Zo zet je JSON naar TSV om

  1. Sleep je JSON-bestand op deze pagina, of klik om er een te kiezen.
  2. Kies TSV als doel. De omzetting gebeurt in je browser en het bestand wordt niet geüpload.
  3. Download het klare TSV-bestand.

JSON of TSV: wat er verandert

JSON vergeleken met TSV
JSONTSV
Volledige naamJavaScript Object NotationTab-Separated Values
Bestandsextensie.json.tsv, .tab
Mediatypeapplication/jsontext/tab-separated-values
Voor het eerst gepubliceerd20011993
SpecificatieRFC 8259IANA text/tab-separated-values
LicentieOpen standaardOpen standaard
Stand van zakenActueelActueel
Opent in een browserElke browserGeen browser
In plaats daarvan overwogenXML, YAML, NDJSONCSV

Het resultaat openen

Geen enkele browser leest TSV. Daarmee is het het minst draagbare van de twee. Ga liever na of de ontvanger het aanneemt voor je het verstuurt.

De gebruikelijke programma's overlappen niet: JSON open je in Visual Studio Code, jq en Postman, TSV in Microsoft Excel, LibreOffice Calc en pandas — wie het resultaat krijgt, heeft dus iets uit de tweede rij nodig.

Waarvoor elk formaat bedoeld is

JSON verscheen in 2001. Het is vastgelegd in RFC 8259, en dat is de moeite waard als het bestand het gereedschap moet overleven dat het schreef.

TSV stamt uit 1993, vastgelegd in IANA text/tab-separated-values. Microsoft Excel, LibreOffice Calc en pandas lezen het formaat.

Van JSON naar TSV: veelgestelde vragen

Wordt mijn JSON-bestand ergens heen geüpload?

Nee. Deze omzetting gebeurt volledig in je browser, dus het bestand verlaat je apparaat niet. Je kunt het zelf nagaan: open het netwerktabblad van de ontwikkelaarshulpmiddelen en zet iets om. Je ziet de pagina zelf en de verzoeken voor statistiek en advertenties waarmee deze dienst betaald wordt, en geen enkel verzoek dat je bestand meeneemt.

Is JSON naar TSV omzetten gratis?

Ja. Geen account, geen watermerk en geen dagtegoed dat opraakt: het draait op je eigen machine, dus je mag zo vaak terugkomen als je wilt. De browser verwerkt bestanden tot 100 MB, 100 tegelijk.

Gaat er kwaliteit verloren bij het omzetten van JSON naar TSV?

JSON en TSV beschrijven de inhoud op fundamenteel andere manieren. De omzetting is daarom een reconstructie en geen kopie: getrouw, maar niet byte voor byte identiek. Geneste objecten worden platgeslagen tot kolommen. Diep geneste gegevens verliezen hun vorm.

Opent een TSV-bestand in de browser?

Geen enkele browser leest TSV. Daarmee is het het minst draagbare van de twee. Ga liever na of de ontvanger het aanneemt voor je het verstuurt.

Meer over deze formaten