mac - utf8_encode excel




Excel a CSV con codificación UTF8 (20)

Usando Notepad ++

Esto solucionará el archivo CSV dañado guardado por Excel y lo volverá a guardar con la codificación adecuada.

  • Exportar CSV desde Excel
  • Cargar en Notepad ++
  • Corrección de codificación
  • Salvar

Excel guarda en CP-1252 / Windows-1252. Abra el archivo CSV en Notepad ++. Seleccionar

Encoding > Character Sets > Western European > Windows-1252

Entonces

Encoding > Convert to UTF-8
File > Save

Primero diga a Notepad ++ la codificación, luego convierta. Algunas de estas otras respuestas se están convirtiendo sin configurar primero la codificación adecuada, lo que hace que el archivo se distorsione aún más. Ellos convertirían lo que debería ser ' en. Si su personaje no encaja en CP-1252, entonces ya se perdió cuando se guardó como CSV. Usa otra respuesta para eso.

Tengo un archivo de Excel que tiene algunos caracteres españoles (tildes, etc.) que necesito convertir a un archivo CSV para usar como un archivo de importación. Sin embargo, cuando hago Guardar como CSV, maneja los caracteres "especiales" en español que no son caracteres ASCII. También parece hacer esto con las comillas izquierda y derecha y los guiones largos que parecen provenir del usuario original que crea el archivo Excel en Mac.

Ya que CSV es solo un archivo de texto, estoy seguro de que puede manejar una codificación UTF8, así que supongo que es una limitación de Excel, pero estoy buscando una forma de pasar de Excel a CSV y mantener los caracteres no ASCII intacto.


  1. Guarde el archivo xls (archivo de Excel) como texto Unicode => el archivo se guardará en formato de texto (.txt)

  2. Cambie el formato de .txt a .csv (cambie el nombre del archivo de XYX.txt a XYX.csv


"nevets1219" tiene razón sobre los documentos de Google, sin embargo, si simplemente "importa" el archivo, a menudo no lo convierte a UTF-8.

Pero si importa el CSV en una hoja de cálculo de Google existente, se convierte a UTF-8.

Aquí hay una receta:

  • En la pantalla principal de Docs (o Drive) haga clic en el botón "Crear" y elija "Hoja de cálculo"
  • Desde el menú "Archivo" elija "Importar"
  • Haga clic en "Elegir archivo"
  • Elija "Reemplazar hoja de cálculo"
  • Elige el personaje que estés usando como separador
  • Haga clic en "Importar"
  • Desde el menú "Archivo", elija "Descargar como" -> CSV (hoja actual)

El archivo resultante estará en UTF-8.


¿Qué pasa con el uso de Powershell.

Get-Content 'C:\my.csv' | Out-File 'C:\my_utf8.csv' -Encoding UTF8

Codificación -> Convertir a Ansi lo codificará en ANSI / UNICODE. Utf8 es un subconjunto de Unicode. Tal vez en ANSI se codificará correctamente, pero aquí estamos hablando de UTF8, @SequenceDigitale.

Hay formas más rápidas, como exportar como csv (delimitado por comas) y luego abrir ese csv con Notepad ++ (gratis), luego Codificar> Convertir a UTF8. Pero solo si tienes que hacer esto una vez por archivo. Si necesita cambiar y exportar con frecuencia, lo mejor es la solución de LibreOffice o GDocs.


Encontré el mismo problema y busqué en Google esta publicación. Nada de lo anterior funcionó para mí. Finalmente, convertí mi .xls Unicode a .xml (elija Guardar como ... XML Spreadsheet 2003) y produjo el carácter correcto. Luego escribí un código para analizar el xml y extraje el contenido para mi uso.


Guardar cuadro de diálogo> Botón Herramientas> Opciones web> Ficha Codificación


He encontrado que la aplicación de hoja de cálculo de OpenOffice , Calc, es realmente buena en el manejo de datos CSV.

En el cuadro de diálogo "Guardar como ...", haga clic en "Opciones de formato" para obtener diferentes codificaciones para CSV. LibreOffice funciona de la misma manera AFAIK.


La única "manera fácil" de hacer esto es la siguiente. Primero, comprenda que existe una diferencia entre lo que se muestra y lo que se mantiene oculto en el archivo .csv de Excel.

(1) Abra un archivo de Excel donde tenga la información (.xls, .xlsx)

(2) En Excel, elija "CSV (delimitado por comas) (* .csv) como el tipo de archivo y guárdelo como ese tipo.

(3) En NOTEPAD (que se encuentra en "Programas" y luego en Accesorios en el menú Inicio), abra el archivo .csv guardado en el Bloc de notas

(4) Luego elija -> Guardar como ... y en la parte inferior del cuadro "guardar como", hay un cuadro de selección etiquetado como "Codificación". Seleccione UTF-8 (NO use ANSI o perderá todos los acentos, etc.). Después de seleccionar UTF-8, guarde el archivo en un nombre de archivo ligeramente diferente al original.

Este archivo está en UTF-8 y conserva todos los caracteres y acentos y se puede importar, por ejemplo, a MySQL y otros programas de bases de datos.

Esta respuesta es tomada de este foro .


Microsoft Excel tiene una opción para exportar hojas de cálculo utilizando la codificación Unicode. Vea la siguiente captura de pantalla.


Otro que he encontrado útil: " Números " permite la configuración de codificación al guardar como CSV.


Para aquellos que buscan una solución completamente programática (o al menos del lado del servidor), he tenido un gran éxito al usar la herramienta xls2csv de catdoc.

Instale catdoc:

apt-get install catdoc

Hacer la conversión:

xls2csv -d utf-8 file.xls > file-utf-8.csv 

Esto está ardiendo rápido.

Tenga en cuenta que es importante que incluya el indicador -d utf-8 , de lo contrario, codificará la salida en la codificación de cp1252 predeterminada y corre el riesgo de perder información.

Tenga en cuenta que xls2csv también funciona solo con archivos .xls , no funciona con archivos .xlsx .


Puede hacer esto en una máquina moderna de Windows sin software de terceros. Este método es confiable y manejará datos que incluyen comillas entre comillas, caracteres de tabulación, caracteres CJK, etc.

1. Guardar desde Excel

En Excel, guarde los datos en file.txt utilizando el tipo de Unicode Text (*.txt) .

2. Inicia PowerShell

Ejecute powershell desde el menú Inicio.

3. Cargue el archivo en PowerShell

$data = Import-Csv C:\path\to\file.txt -Delimiter "`t" -Encoding BigEndianUnicode

4. Guardar los datos como CSV

$data | Export-Csv file.csv -Encoding UTF8 -NoTypeInformation

Puede usar el comando iconv en Unix (también disponible en Windows como libiconv ).

Después de guardar como CSV bajo Excel en la línea de comando poner:

iconv -f cp1250 -t utf-8 file-encoded-cp1250.csv > file-encoded-utf8.csv

(Recuerde reemplazar el cp1250 con su codificación).

Funciona rápido y excelente para archivos grandes como la base de datos de códigos postales, que no se pueden importar a GoogleDocs (límite de 400,000 celdas).


Suponiendo un entorno de Windows, guarde y trabaje con el archivo como de costumbre en Excel, pero luego abra el archivo de Excel guardado en Gnome Gnumeric (gratis). Guarde la hoja de cálculo de Gnome Gnumeric como CSV que, para mí de todos modos, la guarda como CSV de UTF-8.


También he encontrado el mismo problema pero hay una solución fácil para esto.

  1. Abra su archivo xlsx en Excel 2016 o superior.
  2. En "Guardar como" elija esta opción: "(CSV UTF-8 (delimitado por comas) * .csv)"

Funciona perfectamente y se genera un archivo csv que se puede importar en cualquier software. Importé este archivo csv en mi base de datos SQLITE y funciona perfectamente con todos los caracteres intactos de Unicode.


Una forma sencilla de hacerlo: descargue la oficina abierta ( OpenOffice ), cargue la hoja de cálculo y abra el archivo excel ( .xls o .xlsx ). Luego simplemente guárdelo como un archivo CSV de texto y se abrirá una ventana que le pedirá que mantenga el formato actual o que lo guarde como un formato .ODF. seleccione "mantener el formato actual" y en la nueva ventana, seleccione la opción que mejor le funcione, de acuerdo con el idioma en el que se haya escrito su archivo. Para el idioma español, seleccione Europa Occidental ( Windows-1252/ WinLatin 1 ) y el archivo funciona bien. Si selecciona Unicode ( UTF-8 ), no funcionará con los caracteres españoles.


Una segunda opción para "nevets1219" es abrir su archivo CSV en Notepad ++ y hacer una conversión a ANSI.

Elija en el menú superior: Codificación -> Convertir a Ansi


abre .csv bien con notepad ++. si ve que la codificación es buena (ve todos los caracteres como deberían ser) presione codificación, luego conviértalos a ANSI else - averigüe cuál es su codificación actual


otra solución es abrir el archivo por winword y guardarlo como txt y luego volver a abrirlo por Excel y funcionará ISA





utf-8