¿Qué es el formato de archivo CSV?
.csv es un formato de archivo que almacena varios tipos de datos en conjuntos de texto separados por caracteres, comúnmente con una coma, de ahí el nombre «Comma-Separated Values». El formato está documentado en el RFC 4180 (2005), un estándar mínimo pero ampliamente adoptado. Los registros de datos se separan mediante un carácter de nueva línea, mientras que los valores de los campos individuales suelen estar encerrados entre caracteres de comillas dobles. Para incluir una comilla doble literal dentro de un campo, esta se escribe dos veces como "".
La primera línea de un archivo .csv convencionalmente contiene los nombres de las columnas (una fila de encabezado), aunque la especificación CSV no obliga a esta estructura. Los campos de los registros pueden estar separados por:
- Comas,
- Puntos y comas,
- Tabulaciones (ver .TSV),
- Otros caracteres, utilizados de forma coherente en todo el documento.
Los archivos .csv se utilizan para almacenar, importar y exportar datos en un formato bien definido e independiente de la plataforma que cualquier editor de texto puede abrir. Debido a que la elección del separador no está restringida, a veces puede causar problemas durante la conversión; por lo tanto, los asistentes de importación de datos deben ofrecer una opción para configurar el separador que se va a utilizar, como es el caso de aplicaciones de hojas de cálculo como Microsoft Excel y LibreOffice Calc.
.csv no tiene firma de archivo (magic bytes) y se identifica por su estructura más que por su contenido. Un archivo puede comenzar opcionalmente con una marca de orden de bytes UTF-8 (EF BB BF), que Excel escribe automáticamente para señalar la codificación. La mayoría de los lenguajes de programación proporcionan librerías dedicadas para importar y gestionar archivos .csv de forma fiable, lo que lo convierte en uno de los formatos de intercambio de datos más universales en uso hoy en día.
Seguridad y protección
RIESGO: MEDIUMCSV es texto plano y no puede ejecutar código por sí mismo, pero conlleva un riesgo real: la inyección CSV (inyección de fórmulas). Si una celda comienza con =, +, - o @, una hoja de cálculo puede ejecutarla como una fórmula al abrirse; los atacantes explotan esto en CSV exportados para ejecutar comandos o filtrar datos. Las versiones modernas de Excel/LibreOffice advierten antes de ejecutar tales fórmulas; no las habilite en archivos de fuentes no confiables. El «riesgo» cotidiano es la corrupción de datos, no el malware: una codificación o delimitador incorrectos que alteran silenciosamente números, fechas y ceros a la izquierda (por ejemplo, códigos postales y números de teléfono que pierden su 0 inicial).
Detalles del formato
en pocas palabrasProgramas que abren archivos CSV
Detalles técnicos
especificación profunda| Tipo MIME | text/csv |
| Estructura de archivo | Texto plano; filas delimitadas por finales de línea, campos delimitados por un carácter separador elegido |
| Delimitador predeterminado | Coma (`,`); el punto y coma y las tabulaciones también son variantes muy utilizadas |
| Final de línea (RFC 4180) | CRLF (`\r\n` según la especificación); LF solo (`\n`) es ampliamente aceptado en la práctica |
| Carácter de cita de campo | Comillas dobles (`"`); duplicadas (`""`) para escapar una comilla literal dentro de un campo |
| Fila de encabezado | Primera fila opcional que convencionalmente enumera los nombres de las columnas; el RFC 4180 deja la estructura del encabezado sin definir |
| Firma de archivo (magic bytes) | Ninguna; identificado por su estructura. Puede aparecer un BOM UTF-8 opcional (`EF BB BF`) al inicio del archivo |
| Soporte de campos multilínea | Soportado cuando el contenido del campo está encerrado entre comillas dobles |
| Modelo de datos | Solo tabla plana única; sin anidamiento, relaciones ni tipos de datos de columna codificados en el formato |
| Codificación de caracteres | Cualquier codificación acordada entre el emisor y el receptor; UTF-8 y Windows-1252 son las más comunes |
| Compresión integrada | Ninguna; los archivos se archivan comúnmente como `.gz` o [ZIP](/format/zip) |
| Idoneidad para streaming | Alta: las filas se pueden procesar línea por línea sin cargar todo el archivo en memoria |
| Soporte de datos binarios | No soportado de forma nativa; el contenido binario debe codificarse en Base64 como texto |
| Límites de filas de la aplicación | Sin límite a nivel de formato; Microsoft Excel limita la importación de hojas a 1.048.576 filas |
| Lanzado | 1970s (early use); RFC 4180 published 2005 |
| Estándar abierto | Sí · libre de regalías |
| Especificación | www.rfc-editor.org |
Conversiones de CSV
Preguntas y respuestas de la comunidad
preguntado por usuariosAún no hay preguntas; sea el primero en preguntar sobre los archivos CSV.