DevToolPal
ES

Conversor de JSON Lines a JSON

Convierte JSON Lines (JSONL, NDJSON) en un array JSON y un array JSON de nuevo en JSON Lines, con errores numerados por línea.

Se ejecuta en local, nunca se sube

Opciones

Dirección
Sangría

Entrada

0 caracteres · 0 B

Salida

0 caracteres · 0 B

Qué hace

JSON Lines (también llamado JSONL o NDJSON) guarda un valor JSON por línea. Es el formato preferido para logs, exportaciones de datos, API de streaming, cargas masivas en BigQuery y Elasticsearch y conjuntos de datos de aprendizaje automático como los archivos de fine-tuning de OpenAI, porque un programa puede leer o añadir registros de uno en uno sin cargar el archivo entero.

Sin embargo, muchas herramientas esperan un único array JSON. Este conversor transforma JSON Lines en un array JSON formateado, y un array JSON de nuevo en JSON Lines con un registro compacto por línea.

Cómo se usa

  1. Elige la Dirección: JSON Lines → JSON o JSON → JSON Lines.
  2. Pega tus datos, sube un archivo .jsonl, .ndjson o .json, o pulsa Ejemplo.
  3. Para la salida JSON, elige 2 o 4 espacios de sangría, o Compacto para una sola línea.
  4. Copia o descarga el resultado, o usa Usar como entrada para convertirlo de vuelta.

Si una línea no es JSON válido, el error indica el número de línea y la columna, para que vayas directo al registro roto; muy útil cuando un log tiene una entrada truncada entre miles.

Ejemplo

Estas tres líneas de JSON Lines:

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

se convierten en este array JSON:

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

En la dirección contraria, cada elemento del array se escribe en una línea, sin espacios, y el archivo termina con un salto de línea.

Cuándo usar cada uno

Usa JSON Lines cuando los registros se producen o consumen de uno en uno: añadir a logs, enviar resultados en streaming, repartir un gran conjunto de datos entre procesos o trabajar con herramientas por líneas como grep, head y wc -l. Usa un array JSON cuando un programa necesita la colección completa de una vez, como un archivo de configuración, datos de prueba o el cuerpo de respuesta de un endpoint REST.

Preguntas frecuentes

› ¿Qué diferencia hay entre JSONL, NDJSON y JSON Lines?

Son nombres del mismo formato: un valor JSON completo por línea, separado por saltos de línea. JSON Lines (.jsonl) y JSON delimitado por saltos de línea (.ndjson) solo difieren en el nombre y la extensión.

› ¿Se permiten líneas en blanco?

Al leer se omiten las líneas en blanco y el salto de línea final. También se aceptan finales de línea de Windows (CRLF) y la marca BOM de UTF-8.

› Mi archivo es JSON con formato y un objeto ocupa varias líneas. ¿Por qué falla?

En JSON Lines cada valor debe caber en una sola línea. Si tu entrada es un array JSON normal, cambia la dirección a JSON → JSON Lines; si es una serie de objetos con formato, ponlos antes dentro de un array.

› ¿La conversión cambia los números o el orden de las claves?

No. Los valores y el orden de las claves se mantienen; solo cambian los espacios. Los enteros muy grandes, fuera del rango seguro de JavaScript (unos 9000 billones), pueden perder precisión, como en cualquier herramienta JSON del navegador.