CSV till JSON

CSV är vad du får ut ur kalkylark och databasexporter; JSON är vad API:er, JavaScript-frontends och moderna konfigurationsfiler vill ha. Den här omvandlaren tar en CSV med en rubrikrad och producerar en array av JSON-objekt där varje rubrik blir en nyckel och varje datarad blir ett objekt. Utdatan är snyggt formaterad med oförändrad Unicode och snedstreck, så att du kan klistra in den direkt i en Postman-förfrågan eller en JS-fil.

Så blir CSV:en JSON

  1. 1

    Klistra in CSV:en

    Den måste innehålla minst en rubrikrad och en datarad; annars returnerar verktyget ett fel.

  2. 2

    Rubrikraden sätter nycklarna

    Rad 1 tolkas med `str_getcsv` och kolumnnamnen, trimmade på blanksteg, blir JSON-nycklar.

  3. 3

    Varje datarad blir ett objekt

    Värden riktas in mot rubriker efter position. Saknade celler skickas ut som tomma strängar.

  4. 4

    Kopiera den snygga JSON:en

    Formaterad med JSON_PRETTY_PRINT, JSON_UNESCAPED_UNICODE och JSON_UNESCAPED_SLASHES så att den läses väl i vilken editor som helst.

Så hanterar konverteringen typer och kantfall

CSV är i grunden typlöst: varje cell är en sträng. JSON har riktiga typer. Omvandlaren tar det säkra före det osäkra och lämnar varje värde som en JSON-sträng, du kommer aldrig att få ett tal som tyst görs om till text, eller ett nollprefixat ID som tappar sina inledande nollor.

Exempel

Indata-CSV:

name,age,email
Alice,30,alice@example.com
Bob,25,bob@example.com

Utdata-JSON:

[
  { "name": "Alice", "age": "30", "email": "alice@example.com" },
  { "name": "Bob",   "age": "25", "email": "bob@example.com"   }
]

Observera att age är en sträng, inte ett tal. Om du behöver numeriska typer kan du antingen efterbearbeta med Number(row.age) i JavaScript, eller använda CSV till JSON-omvandlaren som har fler alternativ för typning.

Kantfall

Situation Beteende
Tom datarad Hoppas över tyst, inget tomt objekt i utdatan.
Rad kortare än rubriken Saknade fält skickas ut som tomma strängar.
Rad längre än rubriken Extra celler kastas.
Dubblerade rubriknamn Senare nycklar skriver över tidigare i det resulterande objektet.
Rubrik med omgivande blanksteg Trimmas innan den används som nyckel.

När du ska välja det andra CSV-till-JSON-verktyget

Detta är den raka omvandlaren, vettiga standardvärden, inga reglage. Ta till CSV till JSON-omvandlaren när du behöver välja en avgränsare som inte är komma, inaktivera rubrikraden eller växla mellan kompakt och snygg utdata.

Vanliga frågor

Inte från den här enkla omvandlaren. Varje värde skickas ut som en JSON-sträng, vilket bevarar ID:n som 00123 och decimaler som 1.50 exakt som de visas. Efterbearbeta med Number() eller parseFloat() hos din konsument, eller använd den andra CSV till JSON-omvandlaren för extra alternativ.

Det här verktyget kräver en, det använder rubriknamnen som JSON-nycklar. Om din fil inte har någon rubrik, lägg till en rad som col1,col2,col3 högst upp, eller byt till CSV till JSON-omvandlaren som har ett reglage för att inaktivera rubriker.

Unicode-tecken lämnas oförändrade (accenter, CJK och emoji visas alla bokstavligt i utdatan). Snedstreck escapas inte heller, så URL:er ser naturliga ut. Dubbla citattecken inuti värden escapas korrekt som \".

Ja. CSV:en skickas till vår server så att JSON:en kan genereras. Den sparas inte och läggs inte till i sidlänken.

Relaterade verktyg

Verktyget finns på andra språk