Невозможно преобразовать � в читаемую строку с иконкой - PullRequest
0 голосов
/ 08 июля 2019

У меня большой текстовый файл с кодировкой iso-8859-1, который я получаю из:

file -i file.txt

Когда я смотрю файл, чтобы увидеть данные, вместо тайской строки будет . Сначала я думаю, что я могу просто использовать iconv в linux для преобразования формата кодирования в другой тип, который я нашел в формате iso-8859-11, который может читать тайскую строку, и думаю, что он будет работать. Как то так:

iconv -f iso-8859-1 -t iso-8859-11 file.txt > output.txt

Но вместо этого я получил эту ошибку:

iconv: illegal input sequence at position 1169

где находится . Я попытался с //TRANSLIT, но все еще получил нечитаемый персонаж.

Можно ли как-нибудь преобразовать этот текстовый файл в тайскую строку? Я знаю, что могу просто открыть файл в каком-нибудь текстовом редакторе и сохранить его в желаемом формате кодировки, но у меня слишком много файлов, и каждый файл размером почти в гигабайт. Я думаю, что iconv может помочь мне конвертировать каждый файл, не конвертируя каждый вручную.

Ps. Я попытался открыть с помощью Python:

with open('file.txt','r+', encoding='iso-8859-11') as f:
   print(f.read())

, который может отлично читать тайский символ, но мне нужно конвертировать большое и много файлов здесь, так что требуется iconv.

...