Codificación de exportación CSV de Excel

7

Según mis pruebas, Excel en Mac, cuando se le pide que guarde datos como un archivo CSV, usa la codificación MacRoman. Mis preguntas son:

  1. ¿Sucede siempre o hay alguna configuración que lo controla?
  2. Si hay una configuración, ¿hay alguna forma de guardarla como UTF-8? Si no es así, ¿hay alguna manera de exportar un archivo de Excel con caracteres que no estén en MacRoman conservando estos caracteres?
pregunta StasM 09.06.2011 - 10:15

6 respuestas

4

He encontrado una publicación de blog que describe una Solución de Apple a un problema similar. Lo he adaptado a tus necesidades. Tenga en cuenta que no he hecho ninguna cotización adecuada de los valores de las celdas ni nada, necesitará algunos ajustes para ser más robusto. Tampoco es la solución más rápida en mis pruebas mínimas ... pero es un comienzo.

La clave es write X to openFile as «class utf8»

tell application "Microsoft Excel"
    activate

    set outFile to (path of active workbook)
    set fileName to (name of active workbook)
    set outFile to (outFile & ":" & fileName & ".csv")
    set openFile to open for access file outFile with write permission
    set eof openFile to 0

    set lastCol to count of columns of used range of active sheet
    set lastRow to count of rows of used range of active sheet

    repeat with r from 1 to lastRow
        set rowStr to (value of cell r of column 1 of active sheet)
        repeat with c from 2 to lastCol
            set cellVal to (value of cell r of column c of active sheet)
            set rowStr to rowStr & "," & cellVal
        end repeat
        write rowStr & return to openFile as «class utf8»
    end repeat
    close access openFile    
end tell
    
respondido por el ghoppe 10.06.2011 - 00:42
11

Descubrí que lo más fácil era dejar que Excel exportara a csv a su manera simple, luego abrir una terminal y hacer lo siguiente:

iconv -t UTF8 -f MACROMAN < file.csv > file-utf8.csv
    
respondido por el Bart Vandendriessche 17.11.2011 - 10:23
3

¿Por qué no simplemente abrir el archivo creado en TextEdit y luego usar cmd + shift + S para guardar un duplicado y luego elegir de la lista desplegable UTF-8?

La gran ventaja es que no tiene que saber explícitamente la codificación creada por Excel como en el método propuesto por Bart. Para mi idioma (polsih) no era Macroman, sino una variación de él.

    
respondido por el andilabs 28.11.2013 - 07:14
2

Habiendo investigado bastante sobre esto, creo que puedo decir con seguridad que no se puede cambiar la codificación de exportación. Sin embargo, lo que podría hacer es agregar un paso a su procedimiento de exportación mediante el cual, después de guardar el CSV en el disco, podría abrirlo en un editor de texto (usé Coda, pero muchos otros lo harán) y usarlo para luego guardarlo usando otra codificación.

    
respondido por el dunos 09.06.2011 - 22:17
0

Simplemente usa un editor como "Editra" - Abrir el archivo csv - Cambia la codificación, por ejemplo a UTF-8, haciendo clic en el tipo de codificación en la barra de estado de la ventana del editor - Guarda el archivo de nuevo (ahora es UTF-8) - Hecho: o)

    
respondido por el Lars 15.03.2012 - 17:42
0

Use Open Office para guardar el archivo csv. Allí puedes elegir la codificación.

    
respondido por el user50949 10.06.2013 - 17:23

Lea otras preguntas en las etiquetas