Tengo un requisito en el que un cliente proporcionará un archivo para codificar ANSI, pero mi sistema solo puede leer correctamente un archivo en UNICODE. Entonces, ¿cómo abordo este problema? Sé que cuando "guardo como" el archivo en UNICODE codificado, el archivo se recoge. Es difícil hacer que el cliente cumpla con nuestra solicitud. Entonces, ¿puedo tener un programa por lotes para esta carpeta para convertir este archivo en UNICODE y luego retomar?Cómo convertir el archivo * .txt en Unicode
Respuesta
recode podría hacer el trabajo.
iconv
puede hacer eso:
Usage: iconv [OPTION...] [FILE...]
Convert encoding of given files from one encoding to another.
Input/Output format specification:
-f, --from-code=NAME encoding of original text
-t, --to-code=NAME encoding for output
Information:
-l, --list list all known coded character sets
Output control:
-c omit invalid characters from output
-o, --output=FILE output file
-s, --silent suppress warnings
--verbose print progress information
-?, --help Give this help list
--usage Give a short usage message
-V, --version Print program version
Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.
For bug reporting instructions, please see:
<http://www.gnu.org/software/libc/bugs.html>.
También puede convertir fácilmente las codificaciones en Python:
inf = open("infile.txt")
data = inf.read().decode("latin1")
inf.close()
outf = open("outfile.txt", "w")
outf.write(data.encode("utf-8"))
outf.close()
he aquí una solución Powershell
$lines = gc "pathToFile"
$lines | out-file -enconding Unicode
Ni ANSI ni Unicode son codificaciones. Deberá conocer la página de códigos ANSI del archivo de entrada y el codificador Unicode ding (UTF8 o UTF16 - LE o BE) antes de que pueda usar una de las herramientas sugeridas (como iconv)
Desearía poder votar esto más. Para la mayoría de los usuarios de Windows, "Unicode" significa UTF32. La mayoría de los idiomas de Europa occidental usan la página de códigos Latin1, por lo que la mayoría de la gente supone que esa codificación es "ANSI" (una vez más, culpo a MS por el uso de sus palabras en sus opciones de "Guardar como"). –
Podríamos agregar que al buscar en Panel de control-> Configuración regional-> Opciones avanzadas se mostrarán las páginas de códigos ANSI que están instaladas y utilizadas. –
En sistemas Windows, "Unicode" generalmente significa UTF-16. –
Recorrí algunas herramientas mencionadas anteriormente, muchas de ellas requieren línea de comando.
Encontré una manera mucho más fácil de convertir archivos en Windows.
Instalar Notepad2 (http://www.flos-freeware.ch/). Es de código abierto y gratuito.
Abrir el archivo tiene codificación ANSI,
doble clic palabra "ANSI" en la parte inferior,
Seleccione nueva codificación tales como "UTF-8"
Guarde el archivo.
Solo hacen unos pocos clics para realizar el trabajo.
Además, puede revisar fácilmente el contenido una vez hecho para verificarlo dos veces.
Notepad2 tiene varias ventajas sobre el Bloc de notas. código resaltado, deshacer/rehacer, etc.
: D
No veo cómo cambiar la codificación usando la GUI de Notepad2 es más fácil que usar la línea de comando, especialmente con múltiples archivos para hacer? – ehambright
La interfaz gráfica de usuario no es pan comido: X Commandline necesita dependencia ... notepad ++ es solo hacer clic, haga clic en clic ... – CodeFarmer
Rubí oneliner, fwiw:
ruby -e 'STDOUT.write STDIN.read.force_encoding(Encoding::WINDOWS_1252).encode!(Encoding::UTF_8)' <infile.csv> outfile.csv
Si el archivo de entrada es horrible lo que pueda necesitar tachuela STDIN.binmode; STDOUT.binmode;
en la parte frontal del guión Ruby.
- 1. Convertir archivo txt a csv en powershell
- 2. cómo sobrescribir datos en un archivo txt?
- 3. Adjuntar un archivo txt en
- 4. Cómo leer en un archivo txt
- 5. Cómo convertir UTF8 a Unicode
- 6. Convertir archivo txt delimitado por tabuladores en un archivo csv utilizando Python
- 7. Crear un archivo RDF usando un archivo txt como entrada
- 8. Convertir nombres de archivo de python a Unicode
- 9. XSLT insertando un archivo TXT
- 10. cómo escribir en un archivo en Unicode en Vb.Net
- 11. PHP - analizar un archivo txt
- 12. Cómo convertir hebreo (unicode) a Ascii en C#?
- 13. Cómo guardar una cadena en un archivo .txt en Delphi?
- 14. convertir unicode en personaje con ruby
- 15. Cómo guardar datos en archivo .txt en MATLAB
- 16. Leer el archivo txt con multi-threaded en python
- 17. Modificar un archivo .txt en Java
- 18. Poner un archivo .txt en un DataGridView
- 19. Cómo imprimir una matriz en un archivo .txt en Matlab?
- 20. convertir el archivo txt con espacios mixtos/pestañas solo a pestañas (donde sea posible)
- 21. Cómo convertir el carácter unicode 00B0 (signo de grado)?
- 22. Cómo convertir archivos .txt a formato de archivo de secuencia de Hadoop
- 23. Cómo convertir el archivo xcdatamodel en el archivo xcdatamodeld?
- 24. jQuery: carga el archivo txt e insértalo en div
- 25. Abrir y leer el archivo txt en ASP
- 26. Encuentra toda la cadena "la" en el archivo .txt
- 27. ¿Hay un límite superior en el tamaño de archivo .txt?
- 28. Lote/Buscar y editar líneas en el archivo TXT
- 29. Cómo escribir cadenas unicode en un archivo?
- 30. Cómo arrastrar y soltar un archivo '.txt' en obj-c
Cuando dices 'Unicode', ¿te refieres a UTF8, UTF16, UTF32, o alguna otra representación? ¿Y cómo detectará el código fuente cuando no es Unicode? ¿En que plataforma Estas tu? –
La mayoría de las personas piensan que UTF-32 = Unicode. Culpo a MS y sus opciones de "Guardar como" para que esta idea prevalezca entre las masas. Es triste ver a un desarrollador (que debería saber mejor) compartirlo. –
MS usa principalmente UCS-2, no UTF-32. – flodin