Python записывает строки в кодированный текстовый файл LE BOM UCS-2 - PullRequest
0 голосов
/ 20 апреля 2019

У меня есть массив текстовых строк в Python 3.7.

Теперь я хочу записать их все в текстовый файл. Проблема заключается в том, что текстовый файл должен быть в кодировке LE UCS-2 (то, что говорится о его кодировке в Notepad ++), иначе файл не будет работать при дальнейшей обработке.

Как записать текстовые строки в файл в этой кодировке, в то время как строки остаются читаемыми?

    with open(textpath, "w", encoding='utf-16-le') as f:
    for line in newlines:
        f.write(line)

Это не работает, потому что генерирует бессмысленный текст ...

1 Ответ

1 голос
/ 20 апреля 2019

Попробуйте написать явную спецификацию:

with open(textpath, "w", encoding='utf-16-le') as f:
    f.write('\ufeff')
    for line in newlines:
        f.write(line)
        # Perhaps you also need to add a newline after each line?
        f.write('\n')

Очевидно, отменить последнее добавление, если в ваших строках уже есть новые строки.

...