Ga naar de hoofdinhoud

CSV naar JSON converteren

Elke CSV-rij wordt één JSON-object en de koprij levert de namen van de eigenschappen. In deze handleiding gaat een klein bestand met een komma tussen aanhalingstekens en een geëscapet aanhalingsteken door de converter, en wordt elke toegepaste regel uitgelegd.

Uitgewerkt voorbeeld

Invoer (CSV)
id,name,item,price,paid
1,"Smith, Jane","Monitor 27""",189.99,true
2,Kim,Keyboard,,false
Uitvoer (JSON)
[
  {
    "id": 1,
    "name": "Smith, Jane",
    "item": "Monitor 27\"",
    "price": 189.99,
    "paid": true
  },
  {
    "id": 2,
    "name": "Kim",
    "item": "Keyboard",
    "price": null,
    "paid": false
  }
]

Omdat "Smith, Jane" tussen dubbele aanhalingstekens staat, blijft de komma binnen de waarde in plaats van een nieuwe kolom te beginnen. In "Monitor 27""" wordt het verdubbelde aanhalingsteken één letterlijk aanhalingsteken. De lege prijs van Kim wordt null, en getallen en true/false komen eruit als JSON-typen, niet als tekenreeksen.

Hoe de converter hiermee omgaat

  • Elke niet-lege regel is één record en lege regels worden overgeslagen. Een waarde tussen aanhalingstekens kan geen regeleinde bevatten.
  • Zet een waarde tussen dubbele aanhalingstekens als die het scheidingsteken bevat. Schrijf binnen aanhalingstekens een aanhalingsteken als twee aanhalingstekens ("").
  • Spaties aan het begin en einde van elke waarde worden verwijderd.
  • Staat „Eerste rij als kopteksten” aan, dan levert de eerste regel de sleutels; staat het uit, dan zijn de sleutels col0, col1, col2 enzovoort.
  • Lege cellen en het woord null worden null, true en false (ongeacht hoofdletters) worden booleans, en numerieke tekst wordt een getal, ook tussen aanhalingstekens, dus 00123 wordt 123.
  • Rijen met minder waarden dan kopteksten krijgen null voor de ontbrekende kolommen; waarden na de laatste koptekst worden weggelaten.

Meer conversiehandleidingen