Saltar al contenido

¿Qué codificación abre archivos CSV correctamente con Excel tanto en Mac como en Windows?

Hola, hallamos la respuesta a lo que estabas buscando, desplázate y la hallarás a continuación.

Solución:

Codificaciones de Excel

Encontré la WINDOWS-1252 codificación para ser lo menos frustrante cuando se trata de Excel. Dado que es básicamente el propio juego de caracteres patentado de Microsofts, se puede asumir que funcionará tanto en Mac como en la versión de Windows de MS-Excel. Ambas versiones incluyen al menos un selector correspondiente de “Origen de archivo” o “Codificación de archivo” que lee correctamente los datos.

Dependiendo de su sistema y las herramientas que utilice, esta codificación también podría denominarse CP1252, ANSI, Windows (ANSI), MS-ANSI o solo Windows, entre otras variaciones.

Esta codificación es un superconjunto de ISO-8859-1 (también conocido como LATIN1 y otros), para que pueda volver a ISO-8859-1 si no puedes usar WINDOWS-1252 por alguna razón. Se le informa que ISO-8859-1 faltan algunos personajes de WINDOWS-1252 como se muestra aquí:

| Char | ANSI | Unicode | ANSI Hex | Unicode Hex | HTML entity | Unicode Name                               | Unicode Range            |
| €    | 128  | 8364    | 0x80     | U+20AC      | €      | euro sign                                  | Currency Symbols         |
| ‚    | 130  | 8218    | 0x82     | U+201A      | ‚     | single low-9 quotation mark                | General Punctuation      |
| ƒ    | 131  | 402     | 0x83     | U+0192      | ƒ      | Latin small letter f with hook             | Latin Extended-B         |
| „    | 132  | 8222    | 0x84     | U+201E      | „     | double low-9 quotation mark                | General Punctuation      |
| …    | 133  | 8230    | 0x85     | U+2026      | …    | horizontal ellipsis                        | General Punctuation      |
| †    | 134  | 8224    | 0x86     | U+2020      | †    | dagger                                     | General Punctuation      |
| ‡    | 135  | 8225    | 0x87     | U+2021      | ‡    | double dagger                              | General Punctuation      |
| ˆ    | 136  | 710     | 0x88     | U+02C6      | ˆ      | modifier letter circumflex accent          | Spacing Modifier Letters |
| ‰    | 137  | 8240    | 0x89     | U+2030      | ‰    | per mille sign                             | General Punctuation      |
| Š    | 138  | 352     | 0x8A     | U+0160      | Š    | Latin capital letter S with caron          | Latin Extended-A         |
| ‹    | 139  | 8249    | 0x8B     | U+2039      | ‹    | single left-pointing angle quotation mark  | General Punctuation      |
| Π   | 140  | 338     | 0x8C     | U+0152      | Π    | Latin capital ligature OE                  | Latin Extended-A         |
| Ž    | 142  | 381     | 0x8E     | U+017D      |             | Latin capital letter Z with caron          | Latin Extended-A         |
| ‘    | 145  | 8216    | 0x91     | U+2018      | ‘     | left single quotation mark                 | General Punctuation      |
| ’    | 146  | 8217    | 0x92     | U+2019      | ’     | right single quotation mark                | General Punctuation      |
| “    | 147  | 8220    | 0x93     | U+201C      | “     | left double quotation mark                 | General Punctuation      |
| ”    | 148  | 8221    | 0x94     | U+201D      | ”     | right double quotation mark                | General Punctuation      |
| •    | 149  | 8226    | 0x95     | U+2022      | •      | bullet                                     | General Punctuation      |
| –    | 150  | 8211    | 0x96     | U+2013      | –     | en dash                                    | General Punctuation      |
| —    | 151  | 8212    | 0x97     | U+2014      | —     | em dash                                    | General Punctuation      |
| ˜    | 152  | 732     | 0x98     | U+02DC      | ˜     | small tilde                                | Spacing Modifier Letters |
| ™    | 153  | 8482    | 0x99     | U+2122      | ™     | trade mark sign                            | Letterlike Symbols       |
| š    | 154  | 353     | 0x9A     | U+0161      | š    | Latin small letter s with caron            | Latin Extended-A         |
| ›    | 155  | 8250    | 0x9B     | U+203A      | ›    | single right-pointing angle quotation mark | General Punctuation      |
| œ    | 156  | 339     | 0x9C     | U+0153      | œ     | Latin small ligature oe                    | Latin Extended-A         |
| ž    | 158  | 382     | 0x9E     | U+017E      |             | Latin small letter z with caron            | Latin Extended-A         |
| Ÿ    | 159  | 376     | 0x9F     | U+0178      | Ÿ      | Latin capital letter Y with diaeresis      | Latin Extended-A         |

Tenga en cuenta que el Falta el signo del euro. Esta tabla se puede encontrar en Alan Wood.

Conversión

La conversión se realiza de manera diferente en cada herramienta e idioma. Sin embargo, suponga que tiene un archivo query_result.csv que sabes es UTF-8 codificado. Conviértelo a WINDOWS-1252 utilizando iconv:

iconv -f UTF-8 -t WINDOWS-1252 query_result.csv > query_result-win.csv

Para UTF-16LE con BOM, si usa caracteres de tabulación como delimitadores en lugar de comas, Excel reconocerá los campos. La razón por la que funciona es que Excel en realidad termina usando su analizador Unicode * .txt.

Consideración: Si el archivo se edita en Excel y se guarda, se guardará como ASCII delimitado por tabulaciones. El problema ahora es que cuando vuelve a abrir el archivo, Excel asume que es CSV real (con comas), ve que no es Unicode, por lo que lo analiza como delimitado por comas, ¡y por lo tanto lo convertirá en un hash!

Actualizar: La advertencia anterior no parece estar sucediendo para mí hoy en Excel 2010 (Windows) al menos, aunque parece haber una diferencia en el comportamiento de ahorro si:

  • edita y sale de Excel (intenta guardar como ‘Unicode * .txt’)

en comparación con:

  • edición y cierre solo el archivo (funciona como se esperaba).

La verdad es que no hay solución. Excel 2011 / Mac no puede interpretar correctamente un archivo CSV que contiene diéresis y signos diacríticos, independientemente de la codificación o el salto de aro que realice. ¡Me alegraría escuchar a alguien decirme algo diferente!

valoraciones y reseñas

Tienes la opción de añadir valor a nuestro contenido cooperando tu veteranía en las explicaciones.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *