simbolos salen saber reparar online detectar decodificar dañado convertir con como codificacion archivo abrir text unicode utf-8 character-set

text - salen - detectar codificacion online



¿La mejor manera de convertir archivos de texto entre juegos de caracteres? (17)

Oneliner utilizando find, con detección automática.

La codificación de caracteres de todos los archivos de texto coincidentes se detecta automáticamente y todos los archivos de texto coincidentes se convierten a codificación utf-8 :

$ find . -type f -iname *.txt -exec sh -c ''iconv -f $(file -bi "$1" |sed -e "s/.*[ ]charset=//") -t utf-8 -o converted "$1" && mv converted "$1"'' -- {} /;

Para realizar estos pasos, se utiliza un shell de sub shell con -exec , ejecutando una sola línea con el indicador -c , y pasando el nombre del archivo como el argumento posicional "$1" con -- {} . En medio, el archivo de salida utf-8 se denomina temporalmente converted .

Por file -bi cual file -bi significa:

  • -b, --enuncia
    No agregue nombres de archivos a las líneas de salida (modo breve).

  • -i, --mime
    Hace que el comando de archivo genere cadenas de tipo mime en lugar de las más tradicionales legibles por humanos. Así puede decir ''texto / plano''; charset = us-ascii ''en lugar de "texto ASCII".

El comando de find es muy útil para dicha automatización de gestión de archivos.

Haga clic aquí para find más información en abundancia .

¿Cuál es la herramienta o el método más rápido y fácil para convertir archivos de texto entre conjuntos de caracteres?

Específicamente, necesito convertir de UTF-8 a ISO-8859-15 y viceversa.

Todo vale: una sola línea en su lenguaje de scripting favorito, herramientas de línea de comandos u otras utilidades para sistemas operativos, sitios web, etc.

Las mejores soluciones hasta ahora:

En Linux / UNIX / OS X / cygwin:

  • Gnu iconv sugerido por Troels Arvin se utiliza mejor como filtro . Parece estar universalmente disponible. Ejemplo:

    $ iconv -f UTF-8 -t ISO-8859-15 in.txt > out.txt

    Como señaló Ben , hay un convertidor en línea que usa iconv .

  • Gnu recode ( manual ) sugerido por Cheekysoft convertirá uno o varios archivos en el lugar . Ejemplo:

    $ recode UTF8..ISO-8859-15 in.txt

    Éste usa alias más cortos:

    $ recode utf8..l9 in.txt

    Recode también admite superficies que se pueden usar para convertir entre diferentes tipos de terminaciones de líneas y codificaciones:

    Convertir líneas nuevas de LF (Unix) a CR-LF (DOS):

    $ recode ../CR-LF in.txt

    Base64 codifica el archivo:

    $ recode ../Base64 in.txt

    También puedes combinarlos.

    Convierta un archivo UTF8 codificado en Base64 con terminaciones de línea Unix en un archivo Latin 1 codificado en Base64 con terminaciones de línea Dos:

    $ recode utf8/Base64..l1/CR-LF/Base64 file.txt

En Windows con PowerShell ( Jay Bazuzi ):

  • PS C:/> gc -en utf8 in.txt | Out-File -en ascii out.txt

    (Sin embargo, no es compatible con ISO-8859-15; dice que los conjuntos de caracteres compatibles son Unicode, utf7, utf8, utf32, ascii, bigendianunicode, predeterminado y OEM).

Editar

¿Quiere decir soporte iso-8859-1? Usando "String" hace esto por ejemplo para viceversa

gc -en string in.txt | Out-File -en utf8 out.txt

Nota: Los valores de enumeración posibles son "Desconocido, Cadena, Unicode, Byte, BigEndianUnicode, UTF8, UTF7, Ascii".


Prueba Notepad ++

En Windows pude usar Notepad ++ para hacer la conversión de ISO-8859-1 a UTF-8 . Haga clic en "Encoding" y luego en "Convert to UTF-8" .


Prueba VIM

Si tienes vim puedes usar esto:

No probado para cada codificación.

La mejor parte de esto es que no tienes que saber la codificación de origen

vim +"set nobomb | set fenc=utf8 | x" filename.txt

Tenga en cuenta que este comando modifica directamente el archivo.

Parte explicacion

  1. + : Usado por vim para ingresar directamente el comando al abrir un archivo. Usualmente se usa para abrir un archivo en una línea específica: vim +14 file.txt
  2. | : Separador de comandos múltiples (como ; en bash)
  3. set nobomb : no utf-8 BOM
  4. set fenc=utf8 : establece una nueva codificación para utf-8 doc link
  5. x : guardar y cerrar archivo
  6. filename.txt : ruta al archivo
  7. " : los qotes están aquí debido a las tuberías. (de lo contrario, bash los usará como tubería bash)

Prueba la función iconv Bash

He puesto esto en .bashrc :

utf8() { iconv -f ISO-8859-1 -t UTF-8 $1 > $1.tmp rm $1 mv $1.tmp $1 }

..para poder convertir archivos así:

utf8 MyClass.java


Bajo Linux, puede usar el muy poderoso comando de recodificación para intentar convertir entre los diferentes conjuntos de caracteres, así como cualquier problema de final de línea. recode -l le mostrará todos los formatos y codificaciones que la herramienta puede convertir. Es probable que sea una lista MUY larga.




DOS / Windows: usar página de código

chcp 65001>NUL type ascii.txt > unicode.txt

El comando chcp se puede usar para cambiar la página de códigos. La página de códigos 65001 es el nombre de Microsoft para UTF-8. Después de configurar la página de códigos, la salida generada por los siguientes comandos será del conjunto de páginas de códigos.


Enfoque de utilidad independiente

iconv -f UTF-8 -t ISO-8859-1 in.txt > out.txt

-f ENCODING the encoding of the input -t ENCODING the encoding of the output


Mi herramienta favorita para esto es Jedit (un editor de texto basado en Java) que tiene dos características muy convenientes:

  • Una que permite al usuario volver a cargar un texto con una codificación diferente (y, como tal, controlar visualmente el resultado)
  • Otro que permite al usuario elegir explícitamente la codificación (y el carácter de fin de línea) antes de guardar

PHP iconv ()

iconv("UTF-8", "ISO-8859-15", $input);


Simplemente cambie la codificación del archivo cargado en IntelliJ IDEA IDE, a la derecha de la barra de estado (parte inferior), donde se indica el conjunto de caracteres actual. Se le pide que recargue o convierta, use Convertir. Asegúrese de hacer una copia de seguridad del archivo original por adelantado.



para escribir el archivo de propiedades (Java), normalmente lo uso en linux (distribuciones mint y ubuntu):

$ native2ascii filename.properties

Por ejemplo:

$ cat test.properties first=Execução número um second=Execução número dois $ native2ascii test.properties first=Execu/u00e7/u00e3o n/u00famero um second=Execu/u00e7/u00e3o n/u00famero dois

PD: escribí la Ejecución número uno / dos en portugues para forzar caracteres especiales.

En mi caso, en primera ejecución recibí este mensaje:

$ native2ascii teste.txt The program ''native2ascii'' can be found in the following packages: * gcj-5-jdk * openjdk-8-jdk-headless * gcj-4.8-jdk * gcj-4.9-jdk Try: sudo apt install <selected package>

Cuando instalé la primera opción (gcj-5-jdk) el problema se terminó.

Espero que esto ayude a alguien.


iconv (1)

iconv -f FROM-ENCODING -t TO-ENCODING file.txt

También hay herramientas basadas en iconv en muchos idiomas.


Yudit editor de Yudit admite y convierte entre muchas codificaciones de texto diferentes, se ejecuta en Linux, Windows, Mac, etc.

-Adán


Get-Content -Encoding UTF8 FILE-UTF8.TXT | Out-File -Encoding UTF7 FILE-UTF7.TXT

La versión más corta, si puede asumir que la entrada de la lista de materiales es correcta:

gc FILE.TXT | Out-File -en utf7 file-utf7.txt