|
| 1 | +--- |
| 2 | +name: CSV |
| 3 | +contributors: |
| 4 | +- [Timon Erhart, 'https://github.com/turbotimon/'] |
| 5 | +translators: |
| 6 | +- [Luis Morales, 'https://github.com/LewisPons'] |
| 7 | +--- |
| 8 | + |
| 9 | +CSV (valores separados por comas) es un formato de archivo ligero que se utiliza para almacenar datos tabulares |
| 10 | +en texto plano, diseñado para facilitar el intercambio de datos entre programas, |
| 11 | +especialmente hojas de cálculo y bases de datos. Su simplicidad y legibilidad humana |
| 12 | +lo han convertido en una piedra angular de la interoperabilidad de datos. A menudo se utiliza para |
| 13 | +mover datos entre programas con formatos incompatibles o propietarios. |
| 14 | + |
| 15 | +Aunque el RFC 4180 proporciona un estándar para el formato, en la práctica, el término "CSV" |
| 16 | +se utiliza a menudo de forma más amplia para referirse a cualquier archivo de texto que: |
| 17 | + |
| 18 | +- Se pueda interpretar como datos tabulares |
| 19 | +- Utilice un delimitador para separar los campos (columnas) |
| 20 | +- Utilice saltos de línea para separar los registros (filas) |
| 21 | +- Opcionalmente incluya una cabecera en la primera fila |
| 22 | + |
| 23 | +```csv |
| 24 | +Nombre, Edad, FechaDeNacimiento |
| 25 | +Alice, 30, 1993-05-14 |
| 26 | +Bob, 25, 1998-11-02 |
| 27 | +Charlie, 35, 1988-03-21 |
| 28 | +``` |
| 29 | + |
| 30 | +## Delimitadores para filas y columnas |
| 31 | + |
| 32 | +Las filas se separan normalmente con saltos de línea (`\n` o `\r\n`), mientras que las columnas |
| 33 | +(campos) se separan con un delimitador específico. Aunque las comas son el delimitador más |
| 34 | +común para los campos, otros caracteres, como el punto y coma (`;`), se utilizan |
| 35 | +comúnmente en regiones donde las comas son separadores decimales (por ejemplo, Alemania). |
| 36 | +Los tabuladores (`\t`) también se utilizan como delimitadores en algunos casos, y estos archivos a menudo |
| 37 | +se denominan "TSV" (valores separados por tabuladores). |
| 38 | + |
| 39 | +Ejemplo usando punto y coma como delimitador y coma para el separador decimal: |
| 40 | + |
| 41 | +```csv |
| 42 | +Nombre; Edad; Nota |
| 43 | +Alice; 30; 50,50 |
| 44 | +Bob; 25; 45,75 |
| 45 | +Charlie; 35; 60,00 |
| 46 | +``` |
| 47 | + |
| 48 | +## Tipos de datos |
| 49 | + |
| 50 | +Los archivos CSV no definen inherentemente los tipos de datos. Los números y las fechas se almacenan como |
| 51 | +texto plano, y su interpretación depende del software que importa el |
| 52 | +archivo. Normalmente, los datos se interpretan de la siguiente manera: |
| 53 | + |
| 54 | +```csv |
| 55 | +Dato, Comentario |
| 56 | +100, Interpretado como un número (entero) |
| 57 | +100.00, Interpretado como un número (punto flotante) |
| 58 | +2024-12-03, Interpretado como una fecha o una cadena (dependiendo del analizador) |
| 59 | +Hola Mundo, Interpretado como texto (cadena) |
| 60 | +"1234", Interpretado como texto en lugar de un número |
| 61 | +``` |
| 62 | + |
| 63 | +## Entrecomillado de cadenas y caracteres especiales |
| 64 | + |
| 65 | +El entrecomillado de cadenas solo es necesario si la cadena contiene el delimitador, caracteres |
| 66 | +especiales, o si de otra manera podría ser interpretada como un número. Sin embargo, a |
| 67 | +menudo se considera una buena práctica entrecomillar todas las cadenas para mejorar la legibilidad y |
| 68 | +robustez. |
| 69 | + |
| 70 | +```csv |
| 71 | +Ejemplos de entrecomillado de cadenas, |
| 72 | +Cadena sin comillas, |
| 73 | +"Cadena opcionalmente entrecomillada (buena práctica)", |
| 74 | +"Si contiene el delimitador, necesita ser entrecomillada", |
| 75 | +"También, si contiene caracteres especiales como \n saltos de línea o \t tabuladores", |
| 76 | +"El propio carácter de entrecomillado "" normalmente se escapa duplicando la comilla ("""")", |
| 77 | +"o en algunos sistemas con una barra invertida \" (como otros escapes)", |
| 78 | +``` |
| 79 | + |
| 80 | +Sin embargo, asegúrese de que para un documento, el método de entrecomillado sea consistente. |
| 81 | +Por ejemplo, los dos últimos ejemplos de entrecomillado con "" o \" no serían |
| 82 | +consistentes y podrían causar problemas. |
| 83 | + |
| 84 | +## Codificación |
| 85 | + |
| 86 | +Se utilizan diferentes codificaciones. La mayoría de los archivos CSV modernos utilizan la codificación UTF-8, pero |
| 87 | +los sistemas más antiguos podrían utilizar otras como ASCII o ISO-8859. |
| 88 | + |
| 89 | +Si el archivo se transfiere o comparte entre diferentes sistemas, es una buena |
| 90 | +práctica definir explícitamente la codificación utilizada, para evitar problemas con la |
| 91 | +malinterpretación de caracteres. |
| 92 | + |
| 93 | +## Más recursos |
| 94 | + |
| 95 | ++ [Wikipedia](https://es.wikipedia.org/wiki/Valores_separados_por_comas) |
| 96 | ++ [RFC 4180](https://datatracker.ietf.org/doc/html/rfc4180) |
0 commit comments