aboutsummaryrefslogtreecommitdiff
path: root/data/split.py
blob: 1f93fca55ddff4d99872c6bb64552f00d2d6fab3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import json

def split_file(input_filename):
    chunk_size = 102400  # 100kB
    part_number = 1
    parts = []
    with open(input_filename, 'rb') as input_file:
        while True:
            data = input_file.read(chunk_size)
            if not data:
                break
            output_filename = f'card_db_parts/part{part_number}'
            with open(output_filename, 'wb') as output_file:
                output_file.write(data)
            parts.append(f'part{part_number}')
            part_number += 1
        with open("card_db_parts/index.json", 'w') as fp:
            fp.write(json.dumps(parts))
    print(f"file splited to {part_number-1} parts")

# 示例用法
split_file('card_db.json')