100 % local: tus datos nunca salen de tu navegador

CSV a JSON — los números llegan como números

Convierte una tabla CSV en un array de objetos JSON con las claves del encabezado. Números y booleanos salen tipados, listos para sumar o comparar.

Instantáneo Privado Cero cookies
Indentación
Delimitador
Invertir: JSON → CSV

Entrada CSV

Salida JSON

Qué hace esta herramienta

La fila de cabecera pasa a ser las claves, y cada fila siguiente un objeto del array. Los valores se tipan en lugar de entrecomillarse a ciegas: 30 sale como el número 30, true como booleano.

El delimitador se detecta al leer, así que un export europeo separado por punto y coma funciona sin tocar nada.

Qué toca la detección de tipos y qué deja estar

Estas son las reglas que importan, porque ahí es donde los conversores suelen destruir datos:

  • un cero a la izquierda mantiene el valor como cadena — 01 sigue siendo "01";
  • la notación hexadecimal y exponencial siguen siendo cadenas: 0x10 y 1e5 no son números aquí;
  • un signo más explícito mantiene el texto, +7 sigue siendo cadena, mientras que -3 pasa a número;
  • true y false pasan a booleanos, distinguiendo mayúsculas — TRUE sigue siendo cadena;
  • un campo vacío pasa a cadena vacía, nunca a null;
  • el texto null sigue siendo la cadena "null", porque CSV no tiene forma de expresar la ausencia.

Y una más, fácil de pasar por alto: el espacio junto a un delimitador forma parte del campo. En 1, 2 el segundo valor es " 2" —una cadena, con su espacio— y no el número 2.

Cuando una fila no encaja con la cabecera

Es un error, y a propósito. Tanto Too many fields como Too few fields indican cuántos campos se esperaban y cuántos se leyeron, lo que basta para localizar la línea. Rellenar o recortar en silencio desplazaría todas las columnas siguientes y te daría un archivo de aspecto correcto.

Las líneas realmente vacías se omiten. Una fila con todos los campos vacíos se conserva: es una fila de verdad.

Privado por diseño

Todo se ejecuta localmente en tu navegador con JavaScript. Tus datos nunca se suben a un servidor, lo que hace que la herramienta sea segura para contenido sensible y funcione sin conexión.

Preguntas frecuentes

¿Por qué mi código postal 01234 sigue siendo una cadena?
Porque un cero a la izquierda significa algo. Convertirlo en número daría 1234 en silencio, así que todo valor que empieza por cero se conserva como texto: códigos postales, referencias de producto y teléfonos salen intactos.
¿Por qué una fila descuadrada es un error y no un aviso?
Porque es ambigua: la herramienta no puede saber si falta un campo o si se coló un delimitador de más. El mensaje indica cuántos campos se esperaban y cuántos se leyeron, suficiente para localizar la línea.
¿Cómo mantengo todo como texto?
Desactiva **Detectar tipos** encima del editor. Todos los valores salen entonces entrecomillados, que es lo que quieres cuando el JSON va directo a un sistema que hace su propio análisis.

Convertidores relacionados