Español

Datos y hojas de cálculo · CSV Limpiador

CSV vs JSON: dos formatos de datos y las ideas sobre la estructura detrás de ellos

· Antecedentes

csv json formatos de datos

Una cuadrícula plana de filas y columnas al lado de un objeto JSON ramificado cuya rama anidada no puede caber directamente
Ilustración de vector original de ToolAcre

CSV describe una tabla; JSON describe un árbol. Esta publicación explica de dónde viene JSON, por qué contiene tipos y anidamientos que CSV no puede y qué significa la falta de coincidencia cada vez que los datos se mueven entre los dos.

La misma lista de clientes se ve completamente diferente como CSV y como JSON: por qué cada formato codifica una idea diferente de estructura

Una tabla de clientes parece compacta en CSV porque cada fila toma prestado el significado de un encabezado compartido. JSON repite los nombres de propiedades en cada objeto y puede anidar una dirección o lista debajo de un cliente. Por lo tanto, los dos expedientes expresan capacidades estructurales diferentes incluso cuando sus hechos visibles se superponen.

ToolAcre convierte la intersección común: un encabezado plano más filas de datos se convierte en una matriz de objetos planos de nivel superior. No convierte la puntuación de los encabezados en ramas ni infiere matrices a partir de columnas repetidas. Comprender ese límite evita que un convertidor plano se confunda con un diseñador de modelos de datos.

CSV como cuadrícula: filas y columnas, significado posicional y nada más allá del texto

Dentro de esta implementación, CSV es una tabla rectangular de cadenas. La primera fila proporciona nombres de encabezado y cada celda posterior recibe el significado de la posición de su columna. Las filas cortas se rellenan y se advierte sobre las largas, porque la posición solo funciona de manera confiable cuando el ancho de la fila coincide con el encabezado.

No hay números nativos, booleanos, objeto o celdas nulas. Las comillas protegen la sintaxis pero no asignan tipo. Una secuencia de dígitos y la palabra verdadero siguen siendo valores textuales, lo que mantiene estables los identificadores y pide al consumidor que aplique un esquema donde realmente exista.

En ToolAcre, las celdas CSV son cadenas ubicadas debajo de una fila de encabezado

El libro de trabajo solicita el origen y el historial de estándares de principios de la década de 2000 de JSON, pero este repositorio no es una fuente para esas fechas o publicaciones. El comportamiento verificable es que el navegador utiliza `JSON.parse` y `JSON.stringify`, aceptando una matriz de objetos de nivel superior para convertirlos en una tabla.

No válido JSON recibe un error de análisis específico, se rechaza una raíz que no es una matriz y las matrices que contienen primitivas no son compatibles. Esos límites de tiempo de ejecución le importan más al visitante que una cronología no citada. El contexto histórico debe provenir de estándares primarios fuera del conjunto de fuentes de esta tarea.

JSON el historial de estándares está fuera del repositorio de evidencia; la forma de tiempo de ejecución admitida es verificable

Un objeto JSON lleva cada clave junto a su valor, mientras que una celda CSV se basa en el encabezado en el mismo índice. ToolAcre calcula las claves no ambiguas una vez y luego asigna cada fila por posición. Las celdas representadas que faltan se convierten en cadenas vacías, por lo que los objetos comparten un conjunto de claves estable.

Esa autodescripción tiene un tamaño y un costo de repetición, pero hace que cada registro JSON sea comprensible sin ubicar un encabezado por separado. Por el contrario, cambiar el orden de una columna CSV sin su encabezado destruye el significado. La conversión debe mantener los nombres y las posiciones emparejados en toda la tabla.

Árboles versus tablas: anidamiento, matrices y claves opcionales, y por qué no tienen un lugar natural en una fila Los valores

JSON pueden contener objetos y matrices, mientras que una celda CSV no puede bifurcarse de forma nativa. En la dirección inversa, ToolAcre serializa un valor anidado con `JSON.stringify` y coloca ese texto JSON en una celda. No crea columnas de dirección_ciudad ni filas de etiquetas adicionales.

Las claves opcionales en los registros JSON se convierten en la unión de columnas en el orden en que se ven por primera vez, con espacios en blanco donde un objeto carece de clave. Se trata de un aplanamiento defendible para objetos planos escasos. No proporciona un mapeo natural para árboles arbitrarios, y la ruta lo dice en lugar de adivinar.

Ejemplo resuelto: un registro con una dirección anidada y una lista de etiquetas, que se muestra en JSON y luego se fuerza en columnas CSV

Una fila plana CSV `id,name,city` seguida de `001,Ada,London` se convierte limpiamente en un objeto con tres propiedades de cadena. Si JSON contiene `address: {city: "London"}` y `tags: ["math","code"]`, la conversión inversa escribe esos valores anidados como cadenas JSON en las columnas de direcciones y etiquetas.

Al cargar ese CSV nuevamente se obtienen cadenas que contienen sintaxis JSON, no valores anidados reconstruidos. Una aplicación posterior podría analizar esas celdas bajo su propio esquema, pero ToolAcre no lo hace. La comparación trabajada aísla exactamente dónde termina la estructura de la tabla y comienza la estructura del árbol.

Ejemplo resuelto: los campos planos se convierten directamente, mientras que el JSON anidado se conserva solo como texto de celda a la inversa

JSON Las líneas, los lenguajes de esquema y los analizadores de transmisión están fuera de la implementación. La salida es una matriz con sangría y la entrada del archivo se lee en la memoria antes de la conversión. No infiera la transmisión registro por registro a partir de la presencia de un trabajador de análisis.

Asimismo, la herramienta no valida las propiedades requeridas ni los rangos numéricos. Protege las claves de objeto de encabezados en blanco y duplicados e informa la forma de las filas, pero la corrección semántica sigue siendo responsabilidad del consumidor. La sintaxis plana puede ser válida mientras los datos comerciales sean incorrectos.

Sepa hacia qué estructura se dirige: cómo el limpiador ToolAcre CSV convierte datos tabulares planos entre CSV y JSON

Sepa qué estructura espera el destino. Para exportaciones planas, ToolAcre ofrece un puente transparente: los encabezados se convierten en claves únicas, las filas se convierten en objetos y los valores siguen siendo cadenas. Para modelos de aplicaciones anidadas, defina una asignación en lugar de forzar bifurcaciones mediante convenciones de nomenclatura de columnas accidentales.

Obtenga una vista previa de la tabla, resuelva las filas irregulares e inspeccione el JSON generado antes de la descarga. El conversor es más potente cuando se utiliza dentro de su estrecha intersección de formatos. No borra su diferencia conceptual y un flujo de trabajo confiable no debería pedírselo.