付费资源

隐藏内容限时特惠
此内容已隐藏,请购买后查看!
¥2 ¥10
您当前未登录!建议登陆后购买,可保存购买订单。
免费更新
客服服务

我有1个约1500M的Base64文本文件,需要转换成二进制文件,但一次转换这么大的文件,内存吃不消,所以就想要分割成50M左右的多个文件,每个文件单独转换;网上找了几个小工具,很多居然带病毒;
另外几个只要超过100M,就崩溃了;用RAR等工具转换后,还得删掉文件头尾被RAR附加的额外数据,只好自己造轮子了,写了这个工具;
V1.001
更新内容:
1、增加了执行时长显示;
2、去掉了对comdlg32.ocx的依赖,没有这个ocx也可以使用。
特点:
1、最大可支持2G的文件(即限制:合并后的文件,或者分割前的文件小于2G)
2、最多可分割成9999个文件
3、可以按字节定义分割文件大小
4、可以自定义缓存大小,避免内存不足或溢出。
附送另外一个python写的: 不过得需要环境库 喜欢省事的还是直接花2元下载exe直接运行的吧
if __name__ == "__main__":
path="E:\\download\\测试数据.txt"
with open(path,"rb") as fp:
# 设置分割的大小,单位k
size=300
size=size*1024
# 开始位置
start=0
# 读取的最终位置
end=0
# 计数器
i=1
byte=b"0"
while byte!=b"":
# 设置指针位置,主要是为了查找指针后面\n的位置,这个操作简称为“寻值”
fp.seek(end+size,0)
byte=fp.read(1)
i+=1
# 寻值
while byte!=b"\n" and byte!=b"":
byte=fp.read(1)
end=fp.tell()
# 存入文件
with open("E:\\download\\a\\1\\"+str(i*1)+".txt","wb") as fp1:
fp.seek(start,0)
fp1.write(fp.read(end-start))
start=end