Los valores separados por comas (CSV) son un formato de texto plano utilizado para representar datos tabulares, como filas y columnas de una hoja de cálculo o una base de datos. Cada registro aparece en su propia línea y los campos de un registro suelen separarse con comas. Como los archivos CSV son legibles para las personas y fáciles de procesar por programas, se usan ampliamente para el intercambio de datos, exportaciones rápidas y conjuntos de datos pequeños.

Formato y convenciones

El registro CSV básico es una secuencia de campos separados por comas. Un ejemplo sencillo es: Nombre,Ocupación,Edad seguido de "Alicia","Ingeniera",30. Cuando un campo contiene una coma, un salto de línea o una comilla doble, por lo general se encierra entre comillas dobles, y una comilla doble interna se representa duplicándola. No existe una norma formal única y universalmente obligatoria; sin embargo, RFC 4180 es una especificación de referencia habitual y muchos programas siguen sus recomendaciones. Para una guía más detallada, consulta la especificación CSV.

Variantes y dialectos comunes

Las implementaciones de CSV varían según la configuración regional y la aplicación. Algunas usan otros delimitadores, como punto y coma, tabulación o barra vertical, para evitar conflictos con las comas en los datos. También difieren los finales de línea, las codificaciones de caracteres (UTF-8 frente a codificaciones heredadas) y la forma en que se tratan los encabezados. Estas variaciones suelen denominarse dialectos y deben acordarse al intercambiar archivos entre sistemas.

Entre las características y reglas de escape habituales se incluyen:

  • Fila de encabezado opcional que nombra las columnas.
  • Campos entre comillas para contener delimitadores o saltos de línea.
  • Duplicación de comillas para escapar una comilla dentro de un campo entrecomillado.
  • Manejo inconsistente del espacio en blanco alrededor de los campos sin comillas.

Históricamente, los formatos parecidos a CSV preceden a las hojas de cálculo modernas y surgieron como una forma sencilla de serializar tablas en texto plano. Con el tiempo, el soporte se añadió a programas de hojas de cálculo, bases de datos y lenguajes de programación, lo que convirtió a CSV en una lingua franca de facto para el intercambio simple de datos.

Usos, ventajas y limitaciones

CSV resulta práctico para importaciones y exportaciones rápidas, inspección manual e interoperabilidad: casi cualquier hoja de cálculo, paquete estadístico y lenguaje de programación puede leer o escribir CSV. Entre sus ventajas están la simplicidad, la compacidad y el amplio soporte de herramientas. Sus limitaciones incluyen la ausencia de valores tipados o esquema, la ambigüedad al analizarlo debido a los dialectos y un soporte débil para estructuras complejas, como datos anidados o metadatos. Para necesidades estructuradas, suelen preferirse formatos como JSON, XML o formatos de tablas dedicados con esquemas explícitos.

Debido a su gran difusión, CSV sigue siendo una opción práctica para muchas tareas cotidianas de datos, pero conviene documentar y acordar los detalles del dialecto, como el delimitador, las comillas y la codificación, para evitar problemas de interoperabilidad.