iconv não pode converter os caracteres fornecidos

0

Eu só queria converter um arquivo txt para UTF-8, pois o cat exibe corretamente, mas o vi ou o gedit não:

$ cat test.txt 
>#
>‹
|
||
°
├──
└──
_
__
$ iconv -f WINDOWS-1253 -t UTF-8 test.txt 
>#
>β€Ή
|
||
Β°
β”iconv: illegal input sequence at position 18
$ 

Q : como posso converter meu texto em UTF-8? iconv não funciona.

    
por evachristine 22.04.2014 / 13:22

2 respostas

1

Seu arquivo contém caracteres como e , que não estão em Windows-1253 , Portanto, se o iconv falhar ou não, você não especificou a codificação de entrada correta e, portanto, a saída está errada.

Se cat exibir o arquivo corretamente, a codificação do arquivo será igual à do seu terminal. Execute o comando locale e observe a linha LC_CTYPE para ver qual codificação seu terminal está usando. É provável que o arquivo já esteja codificado em UTF-8.

Parece que o Vi e o Gedit não conseguem detectar a codificação do arquivo automaticamente. Você os configurou para assumir uma codificação específica? Se assim for, não faça isso. Se não, no Gedit, selecione “UTF-8” em vez de “detectado automaticamente” ao abrir o arquivo. No Vim, use :set encoding=utf-8 .

    
por 23.04.2014 / 04:06
1

Os caracteres de origem parecem ser ATARI. Tente -f ATARI ou -f ATARIST

    
por 03.04.2015 / 17:50