tigtools

JSON naar CSV-converter

Plak een JSON-array en maak er een CSV-tabel van die je kunt openen in Excel, Google Sheets of LibreOffice. De conversie vindt plaats in je browser.

Werkt in je browser Geen registratie nodig

Scheidingsteken

Zo gebruik je deze tool

  1. Plak een JSON-array met objecten, open een .json-bestand of klik op “Probeer een voorbeeld”.
  2. Kies het scheidingsteken dat je spreadsheet verwacht en hoe arrays in objecten moeten worden weergegeven.
  3. Controleer het CSV-voorbeeld. Elk object vormt één rij; geneste velden worden kolommen zoals address.city.
  4. Kopieer de CSV of download deze als .csv-bestand.

Hoe het werkt

Elk item in de array op het hoogste niveau wordt één rij. De kolommen bevatten alle sleutels, in de volgorde waarin ze voor het eerst voorkomen. Zo blijven objecten met verschillende velden op één lijn; een ontbrekend veld of een null-waarde levert een lege cel op. Geneste objecten worden afgevlakt met puntnotatie: {"address": {"city": "Oslo"}} wordt een kolom met de naam address.city. Als de hoofdwaarde één object is, bestaat het resultaat uit één rij. Arrays met eenvoudige waarden (zoals [1, 2, 3]) leveren één kolom op met de naam value.

Arrays in objecten kunnen op drie manieren worden weergegeven: als JSON-tekst in één cel (["a","b"]), samengevoegd in één cel (a; b) of uitgespreid over genummerde kolommen (tags.0, tags.1). Gebruik de laatste optie als elke rij een vergelijkbare, korte lijst bevat.

De uitvoer voldoet aan RFC 4180: een veld wordt tussen dubbele aanhalingstekens gezet als het scheidingsteken, een dubbel aanhalingsteken of een regeleinde bevat. Aanhalingstekens in het veld worden verdubbeld. Rijen eindigen op CRLF-regeleinden. In veel Europese landinstellingen verwacht Excel puntkomma's in plaats van komma's, omdat de komma het decimaalteken is. Excel kan lange getallen, voorloopnullen en tekst die op een datum lijkt ook anders weergeven wanneer het een CSV-bestand opent. Importeer het bestand als tekst als exacte waarden belangrijk zijn. Getallen groter dan 2^53 verliezen precisie wanneer de JSON wordt geparseerd.

Voorbeelden

Gebruikers exporteren vanuit een API

Een API retourneert [{"id":1,"name":"Ada","address":{"city":"London"}}, …]. De CSV bevat de kolommen id, name en address.city, zodat je de gegevens direct in een spreadsheet kunt sorteren en filteren.

Tekst met komma's en aanhalingstekens

Een naam zoals Alan "AT" Turing wordt "Alan ""AT"" Turing" en een plaatsnaam zoals Wilmslow, Cheshire wordt tussen aanhalingstekens gezet. Zo houden spreadsheetprogramma's elke waarde in een eigen cel.

Openen in de Duitse of Franse versie van Excel

Kies Puntkomma als scheidingsteken en schakel UTF-8 BOM in. Excel splitst de kolommen dan correct en geeft tekens zoals ä en é zonder vervorming weer.

Veelgestelde vragen

Wat gebeurt er met diep geneste JSON?

Geneste objecten worden op elk niveau afgevlakt tot kolomnamen met puntnotatie, bijvoorbeeld order.customer.address.zip. Arrays worden verwerkt volgens de gekozen optie: als JSON-tekst, samengevoegde waarden of één kolom per item.

Waarom zijn sommige cellen leeg?

Een cel is leeg als het object de sleutel niet heeft of als de waarde null is. De kolommen worden bepaald op basis van alle objecten samen. Ook een sleutel die maar in sommige objecten voorkomt, krijgt dus een kolom.

Welk scheidingsteken moet ik gebruiken?

Een komma is de standaard. Gebruik een puntkomma voor Excel in landinstellingen waar decimalen met een komma worden geschreven (in een groot deel van Europa en Latijns-Amerika), en een tab als de gegevens zelf veel komma's bevatten of als je ze rechtstreeks in een spreadsheet wilt plakken.

Kan ik CSV ook terug converteren naar JSON?

Ja, met de CSV to JSON-converter op deze site. Houd er rekening mee dat afvlakken niet volledig omkeerbaar is: kolomnamen met puntnotatie worden gewone sleutels zoals "address.city", geen geneste objecten.

Privacy

De conversie vindt plaats in je browser. Je JSON en het CSV-resultaat worden niet geüpload of opgeslagen en zijn niet opgenomen in analytics.