2016-04-10 4 views
0

У меня есть 3 текстовых файла (file1.txt, file2.txt, file3.txt), который содержит форматированные данные JSON. Размер файлов как что-то вроде этого:MemoryError при чтении JSON из txt-файла

file1 = 104.55 Mb 
file2 = 104.68 Mb 
file3 = 104.49 Mb 

Я могу открыть и прочитать file1 и file3 без каких-либо проблем, но когда я пытаюсь открыть file2 Я получаю MemoryError несмотря на его размер почти такой же, как и остальные, разница меньше 200KB.

Вот моя реализация для открытия файлов:

with open(file1.txt, encoding="utf-8") as f: 
    jsonContent = json.load(f) 

json_data = json.dumps(jsonContent) 
file_data = json.loads(json_data) 

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

+0

Вы хотите загрузить все эти файлы вместе? – Kasramvd

+0

@Kasramvd No. Я хотел бы загрузить один файл всегда. – gatto

ответ

0

Всегда сложно сказать, что именно вызывает проблему; но этот вопрос был задан раньше, обычно отвечал со ссылками на iJSON или json streamer.

Я не буду говорить, что это решение defacto для вас, но вопрос распространен. Если вы идете по маршруту iJSON, просмотрите this post и поток вокруг него.

Смежные вопросы