Tabla CSV (.csv)
RFC EstándarComma-Separated Values (CSV) es un formato de texto plano muy utilizado para datos tabulares. Cada línea representa un registro y los campos se separan con delimitadores.
Convertir de XLSX a CSV
Convertidor gratuito de XLSX a CSV en el navegador. Convierte archivos al instante en tu dispositivo.
Comprimir CSV en línea
Privado - los archivos nunca salen de tu dispositivo
Inspección y metadatos
Los sistemas operativos y analizadores de archivos identifican los archivos de CSV inspeccionando la secuencia de bytes binarios inicial:
Firma de cabecera a nivel de bytes (bytes mágicos)
Los sistemas operativos y analizadores de archivos identifican los archivos de CSV inspeccionando la secuencia de bytes binarios inicial:
FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):
No tiene una firma fijaREPRESENTACIÓN ASCII: Bytes de texto; la codificación puede variar
Estandarización: RFC 4180 / IETF
Especificaciones técnicas
| Arquitectura del contenedor | Archivo de texto plano con delimitadores que representa datos tabulares en filas y columnas |
| Compresión | Gzip/Deflate reduce entre un 85 % y un 95 % el tamaño de registros tabulares repetitivos |
| Orden de bytes (Endianness) | Flujo de texto UTF-8 (Excel puede usar la marca BOM UTF-8 opcional EF BB BF) |
| Espacios de color | No aplicable |
| Canales y estructura | Registros separados por CRLF y columnas separadas por comas |
| Dimensiones máximas | Sin límite propio; se pueden procesar en streaming gigabytes de datos sin cargar el archivo entero en memoria |
| Transparencia | No aplicable |
| Streaming y progresivo | Todos los procesos de datos admiten el procesamiento nativo línea por línea en streaming. |
Matriz de comparación técnica: CSV frente a la competencia
| Atributo técnico | CSV (Actual) | Excel (XLSX) | Parquet | JSON |
|---|---|---|---|---|
| Tipo de archivo | Tabla plana de texto sin formato | Hoja de cálculo XML comprimida en ZIP | Almacenamiento columnar binario | Texto jerárquico |
| Múltiples hojas | No (solo una única tabla plana) | Sí (múltiples libros y hojas de trabajo) | Almacenamiento basado en particiones | Matrices y objetos anidados |
| Tipos de datos | Texto sin formato y sin tipado | Celdas tipadas, fórmulas, formato | Tipos de columna binarios estrictos | Tipos primitivos (cadena, número, booleano) |
| Análisis de macrodatos | Lento (requiere leer cada fila de forma lineal) | No apto para big data | Muy rápido (poda de columnas y propagación de predicados) | Moderado |
Modos de corrupción comunes y guía de recuperación hexadecimal
Las columnas se desplazan hacia la derecha o el recuento de filas no coincide.
Causa raíz: Un campo de texto contiene una coma sin escapar y no está entre comillas.
Recuperación: Según RFC 4180, los campos que contienen comas deben ir entre comillas dobles: «Smith, John».
En Excel, los caracteres acentuados aparecen como símbolos extraños (texto ilegible como é en lugar de é).
Causa raíz: Excel abrió un CSV en UTF-8, pero interpretó el archivo con la codificación ANSI/CP1252 antigua de Windows.
Recuperación: Añade la marca de orden de bytes (BOM) UTF-8 de 3 bytes (0xEF 0xBB 0xBF) al principio del archivo.
Análisis de seguridad y vectores de ataque al analizador
Los archivos CSV se abren directamente en hojas de cálculo como Excel y Google Sheets, lo que expone a los usuarios a ataques de inyección de fórmulas (inyección CSV).
Vectores de ataque conocidos
- Inyección de fórmulas: una celda que empieza por «=», «+», «-» o «@» puede ejecutar macros de hojas de cálculo o comandos DDE (por ejemplo, «=cmd|» /C calc’!A0’).
- Exfiltración de datos mediante fórmulas HYPERLINK() que, al hacer clic, envían datos confidenciales de las celdas a servidores controlados por un atacante.
Mejores prácticas defensivas: Al exportar datos de usuarios a CSV, añade una comilla simple (') o un tabulador al principio de las celdas que empiecen por «=», «+», «-» o «@», para que Excel las interprete como texto sin formato.
Orígenes históricos e hitos
Ventajas principales
- Máxima sencillez: se puede leer en cualquier editor de texto e importar en cualquier base de datos u hoja de cálculo.
- Permite procesar datos muy rápido, línea por línea, sin crear un DOM completo en memoria.
- Sobrecarga mínima: no requiere una sintaxis de etiquetas verbosa ni definiciones de esquemas.
Limitaciones técnicas
- No tiene tipos de datos definidos: los números, las fechas, los valores booleanos y el texto se guardan como cadenas sin formato.
- No admite varias hojas, formato de celdas, fórmulas ni metadatos.
- Los conflictos con los delimitadores (comas dentro del texto o comas decimales en algunos países europeos) provocan errores de análisis frecuentes.
Curiosidades técnicas interesantes
- En muchos países europeos, donde la coma se usa como separador decimal, los archivos CSV usan punto y coma (;) como separador de campos.
- Históricamente, Microsoft Excel requería un BOM UTF-8 (0xEF 0xBB 0xBF) para mostrar correctamente los caracteres con tilde que no son ASCII.
- En 2020, el Servicio Nacional de Salud del Reino Unido (NHS) perdió casi 16 000 registros de seguimiento de contactos de COVID-19 al importarlos a un formato antiguo de hoja de cálculo de Excel, que admitía un máximo de 65 536 filas.
Preguntas técnicas frecuentes
¿Qué es el RFC 4180?
RFC 4180 es el estándar oficial del IETF para CSV. Establece que los campos que contienen comas, saltos de línea o comillas dobles deben ir entre comillas dobles, y que las comillas internas deben duplicarse («»).
¿Por qué los archivos CSV se abren con caracteres corruptos en Excel?
Las versiones antiguas de Microsoft Excel usan por defecto la página de códigos local de Windows (como Windows-1252) en lugar de UTF-8 al abrir archivos CSV directamente. Si añade una marca de orden de bytes (BOM) UTF-8 al principio del archivo, Excel lo descodifica correctamente.
¿Qué es la inyección CSV (Inyección de fórmulas)?
La inyección CSV se produce cuando se exportan datos no confiables de un usuario que empiezan por un signo que activa fórmulas («=», «+», «-» o «@»). Al abrir el archivo en un programa como Excel, la hoja de cálculo ejecuta automáticamente la fórmula o el comando de intercambio dinámico de datos (DDE), que podría ejecutar comandos del sistema o exfiltrar datos.
Pares de conversión de CSV relacionados
La conversión de una hoja de Excel a una tabla CSV extrae datos tabulares sin procesar en un formato de texto universal para lograr la máxima compatibilidad de software.
Convertir archivos CSV de texto plano en hojas de cálculo XLSX con más funciones permite aplicar estilos avanzados, usar fórmulas y crear varias hojas.
Convertir archivos de texto plano en bases de datos relacionales estructuradas permite ejecutar consultas rápidas y gestionar relaciones complejas entre los datos.
Convierte scripts de copia de seguridad de bases de datos relacionales en tablas planas para analizar datos y crear informes sencillos.
La conversión de conjuntos de datos jerárquicos HDF5 en archivos CSV de telemetría planos transforma registros científicos complejos y multidimensionales en filas y columnas simples para su análisis en hojas de cálculo.
La conversión de cuadrículas científicas NetCDF multidimensionales en archivos CSV de telemetría planos hace que los datos complejos del clima y los océanos sean legibles en software básico de hojas de cálculo.
Convertir archivos vCard en archivos CSV de contactos transforma tarjetas de contacto jerárquicas en filas de hojas de cálculo planas para facilitar las importaciones de bases de datos.