DevToolPal
IT

Convertitore da JSON Lines a JSON

Converti JSON Lines (JSONL, NDJSON) in un array JSON e un array JSON di nuovo in JSON Lines, con errori numerati per riga.

Eseguito in locale, mai caricato

Opzioni

Direzione
Rientro

Input

0 caratteri · 0 B

Output

0 caratteri · 0 B

Cosa fa

JSON Lines (detto anche JSONL o NDJSON) memorizza un valore JSON per riga. È il formato preferito per log, esportazioni di dati, API in streaming, caricamenti massivi in BigQuery ed Elasticsearch e dataset di machine learning come i file di fine-tuning di OpenAI, perché un programma può leggere o aggiungere un record alla volta senza caricare l’intero file.

Molti strumenti però si aspettano un unico array JSON. Questo convertitore trasforma JSON Lines in un array JSON formattato e un array JSON di nuovo in JSON Lines, con un record compatto per riga.

Come si usa

  1. Scegli la Direzione: JSON Lines → JSON oppure JSON → JSON Lines.
  2. Incolla i dati, carica un file .jsonl, .ndjson o .json, oppure fai clic su Esempio.
  3. Per l’output JSON scegli un rientro di 2 o 4 spazi, oppure Compatto per una sola riga.
  4. Copia o scarica il risultato, oppure usa Usa come input per riconvertirlo.

Se una riga non è JSON valido, l’errore indica numero di riga e colonna, così puoi andare dritto al record rotto: utile quando un log ha una voce troncata tra migliaia.

Esempio

Queste tre righe di JSON Lines:

{"id": 1, "event": "signup"}
{"id": 2, "event": "login"}
{"id": 3, "event": "logout"}

diventano questo array JSON:

[
  {
    "id": 1,
    "event": "signup"
  },
  {
    "id": 2,
    "event": "login"
  },
  {
    "id": 3,
    "event": "logout"
  }
]

Nella direzione opposta, ogni elemento dell’array viene scritto su una riga, senza spazi, e il file termina con un a capo.

Quando usare l’uno o l’altro

Usa JSON Lines quando i record vengono prodotti o consumati uno alla volta: aggiunte ai log, risultati in streaming, suddivisione di un grande dataset tra più worker o elaborazione con strumenti per riga come grep, head e wc -l. Usa un array JSON quando un programma ha bisogno dell’intera collezione in una volta, come un file di configurazione, dati di test o il corpo di risposta di un endpoint REST.

Domande frequenti

› Che differenza c’è tra JSONL, NDJSON e JSON Lines?

Sono nomi dello stesso formato: un valore JSON completo per riga, separato da a capo. JSON Lines (.jsonl) e JSON delimitato da newline (.ndjson) differiscono solo per nome ed estensione.

› Le righe vuote sono ammesse?

Durante la lettura le righe vuote e l’a capo finale vengono ignorati. Sono gestiti anche i fine riga Windows (CRLF) e il BOM UTF-8.

› Il mio file è JSON formattato e un oggetto occupa più righe. Perché non funziona?

In JSON Lines ogni valore deve stare su una sola riga. Se l’input è un normale array JSON, imposta la direzione su JSON → JSON Lines; se è una sequenza di oggetti formattati, mettili prima in un array.

› La conversione modifica numeri o ordine delle chiavi?

No. Valori e ordine delle chiavi restano invariati; cambiano solo gli spazi. Interi molto grandi oltre l’intervallo sicuro di JavaScript (circa 9 milioni di miliardi) possono perdere precisione, come in qualsiasi strumento JSON nel browser.