Konvertera CSV till JSON

Konvertera CSV till JSON online – gratis, direkt och privat. Din fil bearbetas lokalt i din webbläsare och laddas aldrig upp.

CSV-avgränsare
Resultat

Konverterade filer och en förhandsvisning visas här.

Klar. Välj en tabellfil att konvertera.

Hur konverteringen fungerar

  • Den första raden läses som rubrik – dess celler blir fältnamn i JSON, och varje efterföljande rad blir ett objekt.
  • Välj den avgränsare som matchar dina data – kommatecken, semikolon eller tabulator.

Din tabellfil konverteras direkt i din webbläsare. Ingenting laddas upp till BroBroGo.

Vanliga frågor

Hur konverterar jag CSV till JSON?

Släpp din CSV-fil och klicka på konvertera – JSON-filen är redo att laddas ner på några sekunder, tillsammans med en förhandsvisning av resultatet. Allt körs på din enhet.

Hur stor fil kan jag konvertera?

Upp till 8 MB, 10 000 rader och 200 kolumner per fil. Större datamängder bör delas upp i mindre filer först.

Vad CSV→JSON-konverteringen faktiskt innebär

När du drar en CSV-fil till verktyget och väljer JSON som utdata konverteras varje rad i tabellen till ett JavaScript-objekt, och varje kolumn till en nyckel. Resultatet blir en array med objekt. Det låter enkelt, men CSV och JSON har fundamentalt olika sätt att hantera data. CSV lagrar allt som ren text utan typinformation – ett pris, en siffra för antal, ett postnummer med inledande nolla – alla blir strängar. JSON däremot stöder tal, booleaner, null och nästlade strukturer, men verktyget försöker inte gissa vilken typ ett fält ska ha. Alla fält förblir strängar om du inte manuellt konverterar dem efter nedladdning. Detta är den viktigaste skillnaden som du måste förstå för att använda verktyget rätt.

Varför alla CSV-fält blir strängar i JSON

CSV-formatet har ingen specifikation för datatyper. En cell som innehåller 123 är inte talet 123, det är teckensekvensen "123". I CSV finns inget sätt att markera att en cell är ett heltal, ett datum eller ett booleskt värde. När verktyget läser CSV-filen tolkar det varje fält som en textsträng, även om det ser ut som en siffra. Det innebär att:

  • Postnummer som 02115 bevaras som "02115" i JSON – ledande nolla försvinner inte.
  • Priser och kvantiteter som 19.99 eller 1000 blir "19.99" och "1000". Om du senare laddar JSON:en i ett JavaScript-program som automatiskt tolkar strängar som tal när de används i beräkningar, måste du explicit konvertera dem med parseFloat() eller Number().
  • Datum som 2023-12-25 förblir strängen "2023-12-25". Inget datumobjekt skapas.

Detta är medvetet och ofta önskvärt, särskilt när du hanterar koder med inledande nollor eller när du vill undvika oförutsedda typkonverteringar i målmiljön. Om du däremot hade använt ett verktyg som automatiskt tolkar tal, skulle 02115 bli 2115 – ett vanligt problem vid import av adressdata.

Avgränsaren styr allt – komma, semikolon eller tabb

CSV står för "comma-separated values", men i praktiken använder många filer semikolon (särskilt i regioner där kommatecken används som decimalavskiljare) eller tabb. Verktyget kräver att du anger vilken avgränsare din fil använder, och valet görs i en dropdown-meny innan konverteringen startar. Om du väljer fel avgränsare tolkas varje rad som en enda lång cell, eller så klyvs fält på fel ställen.

Avgränsare Vanligt användningsområde
Komma (,) Engelskspråkiga filer, standard-CSV
Semikolon (;) Europa och Sydamerika (decimaltecken är komma)
Tabb (\t) TSV (Tab Separated Values), ofta exporterad från databaser

Om din CSV har inbäddade kommatecken inuti fält (t.ex. "Stockholm, Sweden") måste dessa fält vara omgivna av citattecken. Verktyget läser citattecken enligt standarden RFC 4180, men om filen inte följer reglerna (t.ex. citattecken som inte escapes korrekt) misslyckas parsningen och du får felmeddelandet: "CSV-filen kunde inte tolkas."

Inbäddade kommatecken, radbrytningar och citattecken – varför det ofta krånglar

CSV-formatet har ingen universell implementation. Två vanliga problem du kommer stöta på:

  1. Inbäddade kommatecken i omslutna fält. Om en cell innehåller "New York, NY" måste hela cellen omges av citattecken och kommatecknet inuti ignoreras som avgränsare. Men om någon exporterat data utan citattecken, tolkas "New" och "York" som två separata fält.

  2. Radbrytningar inuti celler. En cell kan innehålla en radbrytning, representerad som \n i JSON. För att det ska fungera måste cellen vara omsluten av citattecken i CSV-filen. Annars tolkas radbrytningen som en ny rad i tabellen, vilket leder till ojämnt antal kolumner och parsningsfel.

  3. Oescaped citattecken. Om en cell innehåller ett citattecken (t.ex. "He said "hello"") måste inre citattecken escapes (skrivas som "" enligt RFC 4180). Många äldre system gör inte det, och verktyget kan då inte avgöra var fältet slutar.

Några filer blandar avgränsare eller använder citattecken inkonsekvent. För att minimera risker, försök alltid exportera CSV från källsystemet med standardiserade inställningar: komma som avgränsare, citattecken runt alla textfält, och escapedouble quotes.

Begränsningar: rader, kolumner, filstorlek och tid

Verktyget har fasta gränser för att förhindra att webbläsaren fryser. Gränserna visas i felmeddelandena:

  • För många rader: "Den här tabellen har fler än ‹max› rader."
  • För många kolumner: "Den här tabellen har fler än ‹max› kolumner."
  • För stor fil: "Filen är för stor. Använd en fil som är mindre än ‹max›."
  • Inget vald fil: "Välj en fil först."
  • Fel filtyp: "Välj en CSV-, JSON- eller XLSX-fil."
  • Tidsöverskridning: "Konverteringen tar för lång tid. Prova med en mindre fil."

Dessa meddelanden visas alltid på engelska i gränssnittet, men i denna artikel anger jag svenska översättningar för tydlighetens skull. Observera att om du laddar upp en JSON- eller XLSX-fil tolkas den först som tabell, men sidans primära scenario är CSV → JSON. Verktyget detekterar formatet automatiskt.

Om filen inte innehåller några datarader (endast rubrikrad eller tom) visas: "Den här filen har inga tabellrader."

Varför du inte kan skapa nästlade JSON-strukturer från CSV

CSV är en platt tabell – varje rad motsvarar en post, varje kolumn ett attribut. Det går inte att representera hierarkiska relationer (t.ex. en order med flera orderrader) i en CSV utan att duplicera data. Verktyget konverterar därför varje rad till ett platt objekt med samma nycklar. Om du behöver nästlad JSON måste du förbehandla CSV:n genom att gruppera rader efter en nyckel eller använda ett annat verktyg som stöder transformationer.

Samma sak gäller omvänd riktning – JSON till CSV – där måste nästlade objekt plattas ut. Men i CSV→JSON är det enklare: ingenting plattas ut, inga strukturer skapas som inte redan finns i tabellen.

Vanliga frågor om CSV→JSON-konvertering

Varför blir mina siffror till strängar i JSON? Eftersom CSV inte har något sätt att markera att en cell är ett tal. Verktyget läser allt som text för att undvika att förlora information som inledande nollor. Du måste konvertera fälten i din mjukvara efter nedladdning.

Mina postnummer förlorar nollan när jag öppnar JSON i Excel – varför? Det är inte verktygets fel. Om du läser JSON i Excel eller ett annat program som automatiskt tolkar siffror kan ledande nollor försvinna. Ladda in JSON som ren text eller använd en miljö som respekterar strängar (t.ex. JavaScript-bibliotek som json.parse med reviver-funktion).

Kan jag konvertera en TSV-fil med tabb? Ja. Välj "Tabb" som avgränsare i dropdown-menyn. Verktyget hanterar tabbseparerade värden på samma sätt som CSV-filer med komma eller semikolon.

Vad händer om min CSV har ojämnt antal kolumner per rad? Normalt misslyckas parsningen och du får felmeddelandet "CSV-filen kunde inte tolkas." Verktyget kräver att alla rader har samma antal kolumner. Om du har enstaka avvikelser, kontrollera om det beror på inbäddade kommatecken eller radbrytningar som inte omslutits korrekt.

Skickas min fil till en server vid konvertering? Nej. All databehandling sker i din webbläsare med JavaScript-filer som laddas från domänen. Ingenting laddas upp till någon server. Därför är verktyget lämpligt för känslig data som adresslistor eller affärsstatistik.

Kan jag konvertera med automatisk typkonvertering, så att siffror blir tal? Nej, verktyget erbjuder inte det alternativet. Syftet är att ge dig full kontroll över typningen. Om du vill ha automatisk konvertering måste du efterbearbeta JSON:en i ditt eget skript.

Stöder verktyget flera CSV-filer samtidigt? Nej, verktyget accepterar bara en fil åt gången. Du måste konvertera varje fil separat.