CodeKitHub
JSON-værktøjer

JSON til CSV-konverter

Senest opdateret:

Indsæt et JSON-array af objekter og få en ren, korrekt escaped CSV tilbage — klar til at kopiere eller downloade. Kolonneoverskrifterne bygges automatisk ud fra hver nøgle, der optræder i arrayet, så rækker med manglende eller ekstra felter håndteres korrekt. Alt kører i din browser; dataene forlader aldrig din enhed.

Hvad er dette værktøj?

API'er og databaser returnerer som regel data som JSON, men regneark, Excel, Google Sheets og de fleste import-værktøjer forventer CSV. Dette værktøj bygger bro over det hul: indsæt et array af JSON-objekter (som et API-svar), og det bygger en CSV med én kolonne pr. unik nøgle og én række pr. objekt.

Konverteringen håndterer de detaljer, der ødelægger naive tilgange: værdier med kommaer eller anførselstegn escapes korrekt, manglende felter bliver til tomme celler i stedet for at få konverteringen til at crashe, og indlejrede objekter eller arrays inde i et felt serialiseres som en JSON-streng i den celle i stedet for stille at blive droppet.

Outputtet følger citationsreglerne i RFC 4180, de facto-standarden for CSV: ethvert felt, der indeholder et komma, et dobbelt anførselstegn eller et linjeskift, pakkes ind i dobbelte anførselstegn, og anførselstegn inde i et felt fordobles. Det er det, der holder en værdi som New York, NY i én kolonne i stedet for stille at blive splittet i to.

Hvorfor bruge det?

  • Automatisk overskriftsdetektion — kolonnelisten bygges ud fra foreningen af nøgler på tværs af alle objekter, så inkonsistente poster ikke ødelægger outputtet.
  • Korrekt CSV-escaping — værdier med kommaer, anførselstegn eller linjeskift citeres korrekt, så filen åbner rent i Excel eller Google Sheets.
  • Håndterer indlejrede data — et objekt eller array inde i et felt serialiseres til JSON-tekst i stedet for at forårsage en fejl.
  • Kopiér til udklipsholder eller download direkte som en .csv-fil.
  • 100% klient-side — dine data (API-svar, eksporterede poster) uploades aldrig nogen steder.

Sådan bruger du det

  1. Indsæt et JSON-array af objekter, f.eks. [{"name":"Alice","age":30},{"name":"Bob","age":25}].
  2. Klik "Convert to CSV".
  3. Gennemgå outputtet — kopiér det, eller klik "Download CSV" for at gemme en fil.
  4. Åbn den downloadede fil i Excel, Google Sheets eller et hvilket som helst regnearksværktøj.

Eksempel

Input

[{"name":"Alice","age":30},{"name":"Bob","city":"NYC"}]

Output

name,age,city
Alice,30,
Bob,,NYC

Læg mærke til hvordan "city" og "age" begge bliver kolonner, selv om intet enkelt objekt har begge dele — manglende værdier efterlades blot tomme.

Praktiske tips

  • Konverterer du et API-svar til en regnearksrapport: indsæt JSON-arrayet direkte fra en browsers Netværk-fane eller et API-testværktøj, konverter og download — intet mellemliggende script nødvendigt.
  • Arbejder du med inkonsistente poster (f.eks. valgfrie felter fra en formulareksport): den automatiske overskriftsdetektion betyder, at du ikke behøver manuelt at forene skemaer først.
  • Hvis din JSON er ét stort objekt med et array indlejret indeni (f.eks. {"users": [...]}), udtræk kun array-delen (delen med [...]), før du indsætter den her.

Hvorfor kolonnerækkefølge og fuldstændighed betyder noget

En subtil, men almindelig CSV-fejl opstår, når data eksporteres ved først at skrive overskrifter i hånden og håbe, at hver række matcher: hvis række 50 ud af 1000 har et ekstra felt, som ingen af de tidligere rækker havde, dropper en naiv linje-for-linje CSV-skriver enten det felt stille og roligt eller forskyder alle efterfølgende kolonner ud af justering. Dette værktøj undgår den fejltilstand ved først at skanne hvert objekt i arrayet for at bygge den komplette, korrekte overskriftsrække, før en eneste linje output skrives — så et felt, der kun optræder én gang, på det allersidste objekt, får stadig sin egen kolonne, og hver anden rækkes værdi for det vises korrekt som tom i stedet for at ødelægge rækkestrukturen.

Ofte stillede spørgsmål

Virker dette med et enkelt JSON-objekt i stedet for et array?

Værktøjet forventer et array — pak et enkelt objekt ind i firkantede parenteser, f.eks. ændr {"name":"Alice"} til [{"name":"Alice"}], så konverteres det til en CSV med én række.

Hvad sker der med indlejrede objekter eller arrays inde i et felt?

De serialiseres som en JSON-streng inden for den celle (f.eks. bliver et felt med {"a":1} til teksten "{""a"":1}" i CSV'en, korrekt anførselstegn-escaped) i stedet for at forårsage en fejl eller blive droppet. Hvis du har brug for at flade indlejrede data ud i separate kolonner, kræver det et andet, skemaspecifikt værktøj.

Bliver mine data uploadet til en server?

Nej. Konverteringen kører som JavaScript helt i din browser — intet sendes nogen steder, hvilket gør dette sikkert at bruge med eksporterede kunde- eller virksomhedsdata.

Hvorfor har min CSV tomme celler?

Hvis nogle objekter i dit array mangler en nøgle, som andre har, findes den kolonne stadig, men cellen efterlades tom for objekter, der ikke har den — dette bevarer alle dine data i stedet for at fejle på inkonsistente poster.

Vil værdier med kommaer ødelægge CSV'en?

Nej. Enhver værdi med et komma, anførselstegn eller linjeskift pakkes automatisk ind i anførselstegn (med interne anførselstegn escaped) efter standard CSV-regler, så den åbner korrekt i Excel og Google Sheets.

Relaterede værktøjer