CSV a JSON

CSV es lo que obtienes de hojas de cálculo y exportaciones de bases de datos; JSON es lo que quieren las APIs, los frontends de JavaScript y los archivos de configuración modernos. Este convertidor toma un CSV con una fila de encabezado y produce un array de objetos JSON donde cada encabezado se convierte en una clave y cada fila de datos se convierte en un objeto. La salida se imprime de forma legible con Unicode sin escapar y barras diagonales, por lo que puedes pegarlo directamente en una solicitud de Postman o en un archivo JS.

Cómo el CSV se convierte en JSON

  1. 1

    Pega el CSV

    Debe contener al menos una fila de encabezado y una fila de datos; de lo contrario, la herramienta devuelve un error.

  2. 2

    La fila de encabezado establece las claves

    La fila 1 se analiza con `str_getcsv` y los nombres de las columnas, recortados de espacios en blanco, se convierten en claves JSON.

  3. 3

    Cada fila de datos se convierte en un objeto

    Los valores se alinean con los encabezados por posición. Las celdas faltantes se emiten como cadenas vacías.

  4. 4

    Copia el JSON legible

    Formateado con JSON_PRETTY_PRINT, JSON_UNESCAPED_UNICODE y JSON_UNESCAPED_SLASHES para que se lea bien en cualquier editor.

Cómo la conversión maneja tipos y casos extremos

CSV es fundamentalmente sin tipo: cada celda es una cadena. JSON tiene tipos reales. El convertidor se mantiene en el lado seguro y deja cada valor como una cadena JSON; nunca obtendrás un número convertido silenciosamente en texto, o un ID con ceros a la izquierda perdiendo sus ceros iniciales.

Ejemplo

CSV de entrada:

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

JSON de salida:

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

Ten en cuenta que age es una cadena, no un número. Si necesitas tipos numéricos, procesa después con Number(row.age) en JavaScript, o utiliza el Convertidor de CSV a JSON que tiene más opciones para tipificación.

Casos extremos

Situación Comportamiento
Fila de datos vacía Se omite silenciosamente, sin objeto vacío en la salida.
Fila más corta que el encabezado Campos faltantes emitidos como cadenas vacías.
Fila más larga que el encabezado Celdas adicionales se descartan.
Nombres de encabezado duplicados Las claves posteriores sobrescriben las anteriores en el objeto resultante.
Encabezado con espacios en blanco Se recorta antes de ser utilizado como clave.

Cuándo elegir la otra herramienta de CSV a JSON

Este es el convertidor directo: configuraciones sensatas, sin interruptores. Usa el Convertidor de CSV a JSON cuando necesites elegir un delimitador diferente al de coma, desactivar la fila de encabezado, o alternar entre salida compacta y legible.

Preguntas frecuentes

No de este convertidor simple. Cada valor se emite como una cadena JSON, lo que preserva IDs como 00123 y decimales como 1.50 exactamente como aparecen. Procesa después con Number() o parseFloat() en tu consumidor, o utiliza el otro Convertidor de CSV a JSON para opciones adicionales.

Esta herramienta requiere una, utiliza los nombres de encabezado como claves JSON. Si tu archivo no tiene encabezado, agrega una fila como col1,col2,col3 en la parte superior, o cambia al Convertidor de CSV a JSON que tiene un interruptor para desactivar encabezados.

Los caracteres Unicode se dejan sin escapar (acentos, CJK, emoji aparecen literalmente en la salida). Las barras diagonales no se escapan tampoco, por lo que las URLs se ven naturales. Las comillas dobles dentro de los valores se escapan correctamente como \".

Sí. El CSV se envía a nuestro servidor para poder generar el JSON. No se almacena y no se añade al enlace de la página.

Herramientas relacionadas

Herramienta disponible en otros idiomas