Cookies de estadística y publicidad
Usamos cookies de estadística y de publicidad, y ambas van a Google. Si rechazas, para ti no cambia nada visible.Ir a la página de privacidad
Aquí puedes convertir CSV a JSON gratis y sin cuenta: suelta el archivo arriba y en un par de segundos tienes el resultado listo para descargar. La conversión ocurre en tu propio navegador, así que el archivo no se sube nunca. Funciona igual en Windows, macOS y Linux que en iPhone y Android, y sigue funcionando aunque cortes la conexión.
Hasta 100 archivos a la vez. Mezclar formatos no es problema.
Se convierten uno tras otro y vuelven juntos en un ZIP.
CSV a JSON
Casi siempre porque hay algo en medio de una tarea. Una exportación de la base de datos que tiene que entrar como archivo de semillas. Una hoja de cálculo que un compañero envió y que ahora debe ser un fixture de pruebas. Una tabla que hay que convertir en el cuerpo de una petición a una API que sólo habla JSON.
En ninguno de esos casos el problema es entender los formatos: el problema es la forma exacta que sale al otro lado y si los tipos van a sobrevivir. Esta página trata de eso y no de explicar qué es una coma.
La primera fila del CSV se convierte en las claves y cada fila siguiente en un objeto. Un archivo con `id,nombre,email` y tres filas produce un array de tres objetos, cada uno con esas tres claves. Es la forma que espera prácticamente cualquier consumidor de JSON, y es la que se puede recorrer con un bucle sin pensar.
Lo que no produce es un objeto indexado por identificador, ni una estructura anidada, ni un JSON por línea. Si necesitas alguna de esas, la transformación es de una línea sobre el array una vez lo tienes, y hacerla ahí es más fiable que buscar un conversor que la haga por ti de una forma que no puedes inspeccionar.
Un CSV no tiene tipos: todo son caracteres hasta que algo decide otra cosa. La conversión infiere números, booleanos y valores nulos porque es lo que casi siempre se quiere, y hay tres casos en los que esa inferencia es exactamente lo contrario de lo que necesitas.
Los códigos postales que empiezan por cero pierden el cero. Las referencias largas de pedido o de tarjeta pasan a coma flotante y se les va la última cifra. Y una columna con valores como `TRUE` o `NO` acaba en booleanos cuando eran texto. Un identificador no es un número por estar hecho de dígitos, y si la columna es una clave, conviene comprobarla en la salida antes de cargarla en ningún sitio.
En España y en gran parte de Hispanoamérica la coma es el separador decimal, así que Excel exporta con punto y coma para que `1,50` no rompa el archivo. La extensión sigue siendo `.csv` y nada dentro dice cuál se usó.
Si la conversión devuelve una sola clave larguísima con toda la fila dentro, ése es el motivo: el archivo está bien y el separador supuesto era el otro. Es el error más frecuente con archivos exportados desde una hoja de cálculo en español, y se arregla indicando el separador correcto, no reparando nada.
Un valor que contiene una coma, una comilla o un salto de línea tiene que ir entre comillas dobles, y una comilla dentro de ese valor se escribe dos veces. Bien hecho, un campo puede contener un párrafo entero con saltos incluidos.
Mal hecho, el daño es silencioso: una comilla sin escapar hace que el resto del archivo se trague en un solo campo, y una coma dentro de una dirección sin comillas desplaza todas las columnas de esa fila. Un archivo de diez mil filas puede estar perfecto salvo en las once que mencionaban una empresa con una coma en el nombre, y nada avisa.
Un CSV no declara su codificación. UTF-8 es lo sensato y es lo que escribe casi todo hoy, pero Excel en Windows ha asumido históricamente una página de códigos regional, que es por lo que una exportación llena de tildes y eñes se abre como galimatías.
El apaño habitual es escribir una marca de orden de bytes: tres bytes invisibles que le dicen a Excel que el archivo es UTF-8. Funciona y crea otro problema, porque muchos analizadores ven esos bytes como parte del primer nombre de columna y una comparación contra `id` falla sin decir por qué. La conversión aquí los descarta, que es lo que casi siempre se quiere.
Una exportación de varios cientos de megabytes se procesa aquí sin cola y sin límite más allá de la memoria de tu propia máquina. No hay subida que esperar, que en un archivo de ese tamaño suele ser la parte lenta.
El JSON resultante siempre pesa más que el CSV de origen, a menudo dos o tres veces, porque cada fila repite todos los nombres de las claves. Es el precio de que cada objeto se explique a sí mismo, y es la razón por la que un pipeline que sólo lee filas sigue prefiriendo el CSV.
Vale la pena decirlo con nombres: lo que se convierte aquí suele ser una lista de clientes, un volcado de pedidos, una tabla de empleados o registros de facturación. Entregarlo a una web a cambio de un archivo de vuelta es un trato malo que se hace por costumbre.
La conversión ocurre dentro de la pestaña del navegador, así que el archivo no se transmite. Puedes desconectar la red y convertir igualmente, que es la forma de comprobarlo en diez segundos en lugar de creerte una frase.
| CSV | JSON | |
|---|---|---|
| Nombre completo | Comma-Separated Values | JavaScript Object Notation |
| Extensión de archivo | .csv | .json |
| Tipo de medio | text/csv | application/json |
| Publicado por primera vez | 1972 | 2001 |
| Especificación | RFC 4180 | RFC 8259 |
| Licencia | Estándar abierto | Estándar abierto |
| Situación actual | Vigente | Vigente |
| Se abre en el navegador | Ningún navegador | Todos los navegadores |
| Considerado en su lugar | XLSX, Parquet | XML, YAML, NDJSON |
No se descarta nada. CSV y JSON guardan su contenido sin pérdida, así que la conversión cambia el envoltorio y no la calidad, y puede repetirse sin que el daño se acumule.
JSON se abre en cualquier navegador actual. CSV llega a menos navegadores todavía. Si el archivo va a una página web o a un formulario, ese suele ser todo el motivo de la conversión.
Los programas de siempre no coinciden: CSV se abre en Microsoft Excel, LibreOffice Calc y pandas, y JSON en Visual Studio Code, jq y Postman, así que quien reciba el resultado necesita alguno del segundo grupo.
CSV se publicó en 1972. Está recogido en RFC 4180, y conviene conocerlo si el archivo tiene que sobrevivir a la herramienta que lo escribió.
JSON es de 2001, recogido en RFC 8259. Visual Studio Code, jq y Postman lo leen.
CSV se publicó en 1972 y JSON en 2001. El más antiguo suele ser el archivo más seguro para entregar; el más reciente hace lo mismo con menos bytes.
No. Esta conversión ocurre por completo en tu navegador, así que el archivo no sale de tu dispositivo. Puedes comprobarlo tú: abre la pestaña de red de las herramientas de desarrollo y convierte algo. Verás la propia página y las peticiones de estadística y publicidad con las que se paga este servicio, y ni una sola que lleve tu archivo.
Sí. Sin cuenta, sin marca de agua y sin cupo diario que se gaste: se ejecuta en tu propio equipo, así que puedes volver tantas veces como quieras. El navegador procesa archivos de hasta 100 MB, 100 a la vez.
No. JSON guarda el mismo contenido sin tirar nada: el resultado es idéntico en calidad al original.
No se descarta nada. CSV y JSON guardan su contenido sin pérdida, así que la conversión cambia el envoltorio y no la calidad, y puede repetirse sin que el daño se acumule.