Я пытаюсь конвертировать большой текстовый файл (размер 5 гиг +), но получил
Из этой записи мне удалось преобразовать формат кодирования текстового файла в формат, который можно прочитать с помощью этого:
path ='path/to/file'
des_path = 'path/to/store/file'
for filename in os.listdir(path):
with open('{}/{}'.format(path, filename), 'r+', encoding='iso-8859-11') as f:
t = open('{}/{}'.format(des_path, filename), 'w')
string = f.read()
t.write(string)
t.close()
Проблема здесь в том, что при попытке конвертировать текстовый файл большого размера (+ 5 ГБ). Я получу эту ошибку
Traceback (most recent call last):
File "Desktop/convertfile.py", line 12, in <module>
string = f.read()
File "/usr/lib/python3.6/encodings/iso8859_11.py", line 23, in decode
return codecs.charmap_decode(input,self.errors,decoding_table)[0]
MemoryError
который я знаю, что он не может прочитать файл с таким большим. И я нашел по нескольким ссылкам, что я могу сделать это, читая построчно.
Итак, как мне применить код, который я должен сделать, чтобы он читал построчно? Что я понимаю, читая построчно здесь, это то, что мне нужно прочитать строку от f
и добавить ее к t
до конца строки, верно?