Как использовать кодеки для преобразования с одного языка в документ с кодировкой utf-8?
В общем, я все еще довольно плохо знаком с Python, и у меня есть проблема, когда у меня есть документ на японском языке, который я пытаюсь преобразовать в документ с кодировкой utf-8. Я действительно не знаю, что я должен получить взамен, когда я делаю это. Когда я запускаю программу, которая у меня сейчас есть, она просто удаляет все и оставляет мне пустой документ в кодировке utf-8. Вот что я имею, любая помощь очень ценится.
РЕДАКТИРОВАТЬ: Извините, что это была опечатка, я исправил оригинальную кодировку. Это Shift-Jis.
import codecs
codecs.open("rshmn10j.txt", 'r', encoding='shift-jis')
newfile = codecs.open("rshmn10j.txt", 'w', encoding='utf-8')
newfile.write(u'\ufeff')
newfile.close()
1 ответ
Если вы пытаетесь преобразовать документ из кодировки "x" в кодировку "utf8", сначала вы должны прочитать документ, используя кодировку, в которой он кодирован.
import codecs
original_document_encoding = "shift-jis" # common japanese encoding.
with codecs.open("rshmn10j.txt", 'r', encoding=original_document_encoding) as in_f:
unicode_content = in_f.read()
with codecs.open("rshmn10j.out.txt", 'w', encoding='utf-8') as out_f:
out_f.write(unicode_content)
with
используется здесь для автоматического закрытия файла при выходе из блока.