Convertire CSV in JSON
Incolli un CSV con intestazione e ottenga un record per riga: in Ada, "Compiler, pioneer", true la virgola tra virgolette resta nello stesso valore. Una riga con colonne in più o in meno viene segnalata con il suo numero. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Gestisce virgole tra virgolette, virgolette precedute dall’escape, terminatori di riga Windows o Unix e ritorni a capo nei valori citati. Ogni riga di dati deve contenere esattamente tante colonne quante ne dichiara l’intestazione; in caso contrario, la conversione si ferma con un errore preciso.
Prepari il CSV con un’intestazione affidabile
Inizi con una riga di intestazione che assegni a ogni colonna un nome univoco e non vuoto. I valori restano stringhe perché CSV non dispone di un sistema di tipi affidabile. Un valore che sembra numerico potrebbe essere un codice conto con zeri iniziali significativi, mentre una data può risultare ambigua tra Paesi.
Il convertitore accetta terminatori Unix e Windows e rimuove l’eventuale indicatore dell’ordine dei byte aggiunto all’inizio da alcuni fogli elettronici. Supporta inoltre le normali regole CSV per le virgolette. Racchiuda un valore tra virgolette doppie se contiene una virgola o un ritorno a capo e raddoppi una virgoletta letterale.
Gli spazi vengono conservati.
Comprenda il controllo rigoroso del numero di colonne
La conversione è volutamente rigorosa sulla struttura. Dopo aver analizzato l’intestazione, conta le colonne e richiede la stessa quantità in ogni record successivo. Un valore finale mancante deve comunque essere rappresentato da un campo vuoto, compresa la virgola che lo introduce.
Analogamente, una virgola inattesa crea una colonna aggiuntiva, tranne quando si trova in un campo racchiuso correttamente tra virgolette. Se un record non coincide, l’operazione indica il numero della riga CSV a partire da uno, il numero di colonne trovato e quello previsto. Questo evita un difetto comune e pericoloso dei convertitori permissivi: valori spostati sotto titoli sbagliati o campi mancanti eliminati senza avviso.
I valori vuoti sono ammessi e diventano stringhe vuote; i record incoerenti no. Il parser rifiuta anche un valore tra virgolette non terminato, una virgoletta dentro un campo non citato e caratteri dopo la virgoletta finale. In questo modo un’esportazione difettosa emerge prima che proprietà errate vengano salvate o trasformate.
Poiché l’algoritmo è deterministico, lo stesso testo CSV produce sempre lo stesso output, senza richieste di rete, valori casuali o marche temporali. Consideri il risultato una conversione strutturale fedele, non una pulizia dei dati. Lo strumento non deduce numeri, valori booleani, date o null, né rinomina titoli o ripara righe rotte.
Se la sorgente usa un altro delimitatore, la normalizzi con virgole prima della conversione. Conservi una riga rifiutata come caso di regressione, così le esportazioni future non reintrodurranno lo stesso difetto.
Casi d'uso
Controllare un flusso di esportazione
Rifiuti il CSV generato non appena un record contiene meno o più campi rispetto all’intestazione dichiarata.
Domande frequenti
I campi possono contenere virgole o ritorni a capo?
Sì. Racchiuda il campo tra virgolette doppie. Una virgoletta letterale dentro un campo citato va scritta due volte.
Cosa accade se una riga ha un numero errato di colonne?
La conversione fallisce con un errore di input che identifica la riga e riporta i conteggi effettivo e previsto.
Sono ammesse le celle vuote?
Sì. Una cella vuota diventa una stringa vuota, purché la riga conservi il numero corretto di colonne.
Perché numeri e date restano come testo?
Perché un CSV non porta tipi affidabili: un numero può essere un codice conto con zeri iniziali significativi, e una data si legge in modo diverso a seconda della regione. È poi la sua applicazione a decidere il tipo di ogni valore.
Posso convertire un file separato da punto e virgola?
Non direttamente: il convertitore si aspetta valori separati da virgole, quindi sostituisca prima il separatore. I valori che contengono una virgola vanno poi messi tra virgolette doppie.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/web/csv-to-json \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"name,role,active\nAda,Engineer,true\nGrace,Admiral,false"}'const res = await fetch("https://api.kit.forhosting.com/web/csv-to-json", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "name,role,active\nAda,Engineer,true\nGrace,Admiral,false"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/csv-to-json",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "name,role,active\nAda,Engineer,true\nGrace,Admiral,false"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/csv-to-json", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"name,role,active\\nAda,Engineer,true\\nGrace,Admiral,false"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"name,role,active\nAda,Engineer,true\nGrace,Admiral,false"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/csv-to-json", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"text": "name,role,active\nAda,Engineer,true\nGrace,Admiral,false"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.csv_to_json",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
timeout_sec | 30 |
max_crawl_pages | 25 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Converta CSV in JSON quando Le serve un oggetto prevedibile per ogni riga, senza accettare in silenzio dati malformati. Incolli un testo CSV con intestazione: lo strumento usa ogni titolo come nome di proprietà JSON.
Prepari il CSV con un’intestazione affidabile
Questi nomi diventano le chiavi di ciascun oggetto JSON: un’intestazione name,email,status genera quindi oggetti con quelle tre chiavi esatte. Mantenere il testo originale evita deduzioni distruttive e permette all’applicazione ricevente di applicare il proprio schema. Un documento con la sola intestazione è valido e restituisce un array JSON vuoto.
Usi l’output JSON in sicurezza nelle applicazioni
Il risultato è un array JSON nell’ordine originale, con un oggetto semplice per ogni record. Può inviarlo a una API, verificarlo in un test, salvarlo come documento JSON oppure passarlo a una convalida che applichi i tipi specifici del dominio. Per l’automazione, l’API costa $0.002 per richiesta; la conversione interattiva può essere eseguita nel browser. La separazione è utile: la conversione stabilisce quale valore appartiene a ogni intestazione, mentre uno schema successivo ne determina il significato.
Casi di integrazione
Preparare un payload per una API
Trasformi un’esportazione da foglio elettronico in oggetti con chiavi coerenti prima di applicare lo schema della API.
Creare fixture di test deterministiche
Converta piccoli esempi CSV in array JSON stabili e facili da confrontare nei test automatizzati.
Domande tecniche
Numeri e booleani vengono convertiti in tipi JSON nativi?
No. Ogni cella CSV resta una stringa, così codici, zeri iniziali e valori ambigui non vengono alterati da deduzioni.
Quanto costa la conversione tramite API?
L’API costa $0.002 per richiesta. La stessa conversione deterministica può essere eseguita interattivamente nel browser.