软件功能:
1、自动识别当前文件夹下的TXT文件并且分割拆分成100M一个文件(需要分割其他大小和格式 稍微修改下代码即可)2、不会出现分割后乱码或其他编码问题
3、可单独处理一个大文件也可以批量处理多个大文件
4、文件很小,好操作好保存
import os
def split_file(file_path, max_size):
# 获取文件名和扩展名
file_dir, file_name = os.path.split(file_path)
file_base_name, file_ext = os.path.splitext(file_name)
# 打开源文件
with open(file_path, 'rb') as source_file:
# 读取源文件内容
content = source_file.read()
# 计算文件大小
file_size = len(content)
# 计算拆分文件的数量
split_count = file_size // max_size + 1
# 拆分文件
for i in range(split_count):
# 构造拆分后的文件名
split_file_name = f"{file_base_name}_{i}{file_ext}"
split_file_path = os.path.join(file_dir, split_file_name)
# 计算当前拆分文件的起始位置和结束位置
start = i * max_size
end = (i + 1) * max_size if i < split_count - 1 else file_size
# 写入拆分文件
with open(split_file_path, 'wb') as split_file:
split_file.write(content[start:end])
print(f"拆分文件 {split_file_name} 创建成功")
# 获取当前文件夹中的文本文件
file_list = [f for f in os.listdir('.') if os.path.isfile(f) and f.endswith('.txt')]
# 拆分每个文本文件
for file_path in file_list:
split_file(file_path, 100 * 1024 * 1024) # 拆分为每个文件大小不超过100MB