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 NDJSON a XLSX 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.
NDJSON a XLSX
Es la única conversión de un archivo de líneas de este sitio pensada para un ser humano. Todos los demás destinos suponen un programa al otro extremo: CSV para un cargador, SQL para una base de datos, Parquet para un motor de consultas. Un libro de cálculo supone a alguien que lo va a abrir, ensanchar una columna y ordenar por fecha.
Si el archivo va a una cadena automatizada, esta no es la página y CSV o Parquet sí lo son. Si va a un compañero, a un cliente o al departamento de administración, el libro te ahorra la conversación que viene siempre detrás de un fichero de texto: cómo abro esto, por qué se ven todos los datos en la primera columna, por qué los importes están mal.
Este es el motivo más concreto para no mandar un CSV a alguien que trabaja en español, y casi ninguna página lo dice. Un CSV separa los campos con comas; una hoja de cálculo con la configuración regional en español espera el punto y coma, porque la coma ya está ocupada como separador decimal. El resultado clásico es un archivo que se abre con todas las columnas apelotonadas en la primera, y a partir de ahí una cadena de asistentes de importación que nadie quería tocar.
Un libro de Excel no tiene ningún separador que negociar. Las celdas están delimitadas dentro del propio archivo, así que no hay nada que interpretar al abrirlo y la configuración regional del destinatario solo decide cómo se muestran los números, no cómo se reparten. Un valor de 12.5 escrito en el volcado llega como el número doce y medio y se ve como 12,5 en un equipo en español y como 12.5 en uno en inglés, siendo el mismo número en los dos.
La otra mitad del mismo problema es la adivinación de tipos. Un fichero delimitado no lleva tipos en ninguna parte, así que la hoja de cálculo deduce uno por columna al abrirlo, y esa deducción es donde ocurre el destrozo conocido: un código postal de Barcelona guardado como 08001 se convierte en 8001, uno de Vitoria pierde su cero igual, una referencia con guiones se interpreta como una fecha y un identificador de más de quince dígitos pierde los últimos por redondeo.
Los registros de un archivo NDJSON ya traen su tipo: una cantidad es un número, una marca es un booleano, y una referencia exportada como cadena es una cadena. Escribirlos en un libro conserva esa distinción dentro del archivo, de modo que no se deduce nada al abrirlo y un 08001 llega siendo 08001. Esa única diferencia elimina una categoría entera de correos de vuelta.
Un campo cuyo valor es un objeto se convierte en una columna por hoja del árbol, con la ruta como encabezado: un objeto de usuario que contiene un nombre llega como una columna llamada usuario.nombre. Las listas se abren por posición, así que dos etiquetas producen etiquetas.0 y etiquetas.1, y los encabezados son la unión de todo el archivo, con lo que una lista que alguna vez llega a cinco elementos añade columnas para las cinco posiciones.
Lo que se pierde no es información sino legibilidad. Un registro de evento con un bloque de petición, otro de usuario y un contexto puede llegar a treinta columnas partiendo de seis campos, y eso es una hoja que nadie lee. Si los bloques anidados no son el asunto, recortarlos antes de convertir da un libro más estrecho, y las columnas que quedan son justo las que le pediste mirar a quien lo recibe.
El libro tiene una hoja y solo una, porque un archivo de líneas es un único flujo de registros sin divisiones internas que llevar a pestañas. El nombre de la hoja sale del nombre del archivo sin la extensión, recortado a treinta y un caracteres, que es el máximo que admite un nombre de hoja.
Si el volcado contiene de verdad varias clases de registro, varios libros o varias conversiones de ficheros ya filtrados dan un resultado mucho más usable que una hoja con una columna que distinga el tipo. Partir el archivo antes es una orden de una línea contra un formato diseñado precisamente para partirse por líneas.
Cada línea del origen es independiente y nada obliga a la segunda a tener las claves de la primera. La conversión recoge todas las claves que aparecen en cualquier parte del archivo, le da una columna a cada una y deja la celda vacía donde una línea no tenía nada que poner.
No se pierde nada, y un archivo que mezcla tres tipos de evento produce una hoja donde cada fila usa un tercio de las columnas. Para quien la recibe eso parece una exportación rota aunque sea una exportación fiel. Filtrar el origen a un solo tipo de evento antes de convertir merece el paso extra: es la diferencia entre una hoja que alguien usa y una hoja por la que alguien pregunta.
Lo que sale es un libro desnudo. La escritura no aplica formatos de número, ni colores, ni negritas, ni fórmulas, ni ajustes de ancho de columna, y no hay ninguna opción para pedirlos. Es una tabla de valores con su fila de encabezados y nada más.
Eso es lo correcto para lo que se está haciendo aquí y conviene saberlo antes de mandarlo. Quien lo reciba va a tener que ensanchar un par de columnas y probablemente congelar la primera fila, y si el documento tiene que quedar presentable, esos dos minutos de maquillaje son suyos y no de esta página. Lo bueno de un libro sin adornos es que los filtros, la ordenación y las tablas dinámicas funcionan todos sobre él sin más.
Los valores se escriben tal como los tenía el registro, sin redondeos, sin reformateo y sin aplicar ninguna configuración regional. Un sello de tiempo exportado como cadena ISO es texto en JSON y llega a la celda como texto, no como una fecha del calendario de la hoja.
Es un límite deliberado más que un descuido: convertirlo en fecha real obligaría a suponer una zona horaria, y suponer mal desplaza todas las horas del informe. Si quien lo recibe necesita fechas ordenables, la vía fiable es una fórmula o un paso de texto en columnas hecho una sola vez por alguien que sepa en qué huso se escribió el registro. Mientras tanto, el texto ISO al menos ordena bien alfabéticamente, que es más de lo que se puede decir de una fecha mal adivinada.
Una línea es una fila, así que el número de filas es el número de líneas menos las vacías, y eso se sabe antes de convertir mirando el final del archivo en un editor. Lo que conviene comparar es esa cifra con lo que una hoja de cálculo es capaz de ser cómodamente.
Unos pocos miles de filas se abren al instante y se trabajan a gusto. Varios cientos de miles se abren despacio, se filtran despacio y producen un archivo que muchos servidores de correo rechazan como adjunto. Por encima de eso la respuesta no es otro formato sino otra pregunta: agregar antes de convertir —un recuento por día, un resumen por cliente—, porque quien iba a recibirlo tampoco pensaba leerse un millón de filas.
Dos comprobaciones que juntas llevan un minuto. Primero, contar las columnas: una hoja mucho más ancha que la lista de campos significa que se ha abierto un bloque anidado, y toca decidir si esas columnas le hacen falta a alguien. Segundo, mirar las columnas de identificadores y de fechas y confirmar que se leen como esperabas.
Y después leer lo que hay dentro. Un volcado de líneas es salida de máquina y suele contener todos los campos que el sistema emite: identificadores internos, marcas de estado, referencias de traza y, con más frecuencia de la que nadie supone, un correo electrónico o un número de teléfono que nadie esperaba encontrar ahí. Una hoja de cálculo hace todo eso visible de una forma en que un fichero de registro no, y es mucho mejor descubrirlo antes de que el archivo salga de la organización que después.
Las dos mitades corren en local: el archivo se lee línea a línea y el libro lo monta una biblioteca que se descarga bajo demanda. No se sube nada, no hay cuenta ni cola, y la capa gratuita acepta hasta 100 MB por archivo con la memoria del equipo como techo real.
En este par la privacidad es más que un argumento de venta, porque el volcado está por definición a punto de compartirse. Convertirlo a través de un servicio ajeno significa que los datos llegan a dos destinatarios en vez de a uno, y solo uno de los dos estaba previsto. Hacerlo aquí deja la lista en la persona a la que de verdad se lo estás mandando.
| NDJSON | XLSX | |
|---|---|---|
| Nombre completo | Newline-Delimited JSON | Libro de Excel |
| Extensión de archivo | .ndjson, .jsonl | .xlsx |
| Tipo de medio | application/x-ndjson | application/vnd.openxmlformats-officedocument.spreadsheetml.sheet |
| Publicado por primera vez | 2013 | 2007 |
| Publicado por | — | Microsoft |
| Especificación | — | ECMA-376 |
| Licencia | Estándar abierto | Estándar abierto |
| Situación actual | Vigente | Vigente |
| Se abre en el navegador | Ningún navegador | Ningún navegador |
| Considerado en su lugar | JSON, CSV | CSV, ODS, Parquet |
Los programas de siempre no coinciden: NDJSON se abre en jq y pandas, y XLSX en Microsoft Excel, LibreOffice Calc y Google Sheets, así que quien reciba el resultado necesita alguno del segundo grupo.
Los dos apuntan a trabajos distintos: NDJSON a mover datos entre programas y la transmisión y XLSX a la edición. Conviene sopesarlo antes, porque la razón de ser de uno suele ser la razón por la que el otro resulta incómodo.
XLSX viene de Microsoft y es de 2007, recogido en ECMA-376. Microsoft Excel, LibreOffice Calc y Google Sheets lo leen.
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. El motor de este par concreto es SheetJS, un lector y escritor de hojas de cálculo en JavaScript; tu navegador lo descarga una vez y lo guarda.
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. SheetJS se descarga en tu equipo y se ejecuta allí, y por eso no hay contador.
NDJSON y XLSX describen el contenido de maneras radicalmente distintas. La conversión es por tanto una reconstrucción y no una copia: fiel, pero no idéntica byte a byte. Los objetos anidados se aplanan en columnas. Los datos muy anidados pierden su forma.
Para la conversión no: ocurre en el navegador que ya tienes abierto. Para abrir el resultado necesitas después el programa con el que tu dispositivo muestra normalmente Excel Workbook.