Разделить текстовый файл на более мелкие байты в python - PullRequest
0 голосов
/ 14 ноября 2018

У меня проблема с разбивкой большого текстового файла на файлы меньшего размера (например, в байтах), например, размер текстового файла составляет 30 КБ, я хочу разделить его на несколько файлов по 5 КБ каждый.

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

есть предложения?

1 Ответ

0 голосов
/ 14 ноября 2018

Если вы хотите разбить его на файлы одинакового размера (например, 5 КБ каждый), то одним из решений будет:

  1. Считать большой файл в двоичном виде
  2. Для каждого5000 байтов (5 КБ), создайте новый файл
  3. Запишите эти 5000 байтов в новый файл

Пример кода:

i = 0
with open("large-file", "r", encoding="utf8") as in_file:
    bytes = in_file.read(5000) # read 5000 bytes
    while bytes:
        with open("out-file-" + str(i), 'w', encoding="utf8") as output:
            output.write(bytes)
        bytes = in_file.read(5000) # read another 5000 bytes
        i += 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...