python实现文件的分割与合并


Posted in Python onAugust 29, 2019

使用Python来进行文件的分割与合并是非常简单的。

python代码如下:

splitFile--将文件分割成大小为chunksize的块;

mergeFile--将众多文件块合并成原来的文件;

# coding=utf-8
import os,sys
reload(sys)
sys.setdefaultencoding('UTF-8')
 
class FileOperationBase:
 def __init__(self,srcpath, despath, chunksize = 1024):
 self.chunksize = chunksize
 self.srcpath = srcpath
 self.despath = despath
 
 def splitFile(self):
 'split the files into chunks, and save them into despath'
 if not os.path.exists(self.despath):
 os.mkdir(self.despath)
 chunknum = 0
 inputfile = open(self.srcpath, 'rb') #rb 读二进制文件
 try:
 while 1:
 chunk = inputfile.read(self.chunksize)
 if not chunk: #文件块是空的
 break
 chunknum += 1
 filename = os.path.join(self.despath, ("part--%04d" % chunknum))
 fileobj = open(filename, 'wb')
 fileobj.write(chunk)
 except IOError:
 print "read file error\n"
 raise IOError
 finally:
 inputfile.close()
 return chunknum
 
 def mergeFile(self):
 '将src路径下的所有文件块合并,并存储到des路径下。'
 if not os.path.exists(self.srcpath):
 print "srcpath doesn't exists, you need a srcpath"
 raise IOError
 files = os.listdir(self.srcpath)
 with open(self.despath, 'wb') as output:
 for eachfile in files:
 filepath = os.path.join(self.srcpath, eachfile)
 with open(filepath, 'rb') as infile:
 data = infile.read()
 output.write(data)
 
#a = "C:\Users\JustYoung\Desktop\unix报告作业.docx".decode('utf-8')
#test = FileOperationBase(a, "C:\Users\JustYoung\Desktop\SplitFile\est", 1024)
#test.splitFile()
#a = "C:\Users\JustYoung\Desktop\SplitFile\est"
#test = FileOperationBase(a, "out")
#test.mergeFile()

程序注释部分是使用类的对象的方法。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现全局变量的两个解决方法
Jul 03 Python
python实现聚类算法原理
Feb 12 Python
PyQt5每天必学之拖放事件
Aug 27 Python
eclipse创建python项目步骤详解
May 10 Python
Python3enumrate和range对比及示例详解
Jul 13 Python
pygame实现俄罗斯方块游戏(基础篇3)
Oct 29 Python
解决Python命令行下退格,删除,方向键乱码(亲测有效)
Jan 16 Python
Python Tornado实现WEB服务器Socket服务器共存并实现交互的方法
May 26 Python
Django def clean()函数对表单中的数据进行验证操作
Jul 09 Python
Python创建简单的神经网络实例讲解
Jan 04 Python
java关于string最常出现的面试题整理
Jan 18 Python
python使用tkinter实现透明窗体上绘制随机出现的小球(实例代码)
May 17 Python
Python配置文件处理的方法教程
Aug 29 #Python
浅谈django url请求与数据库连接池的共享问题
Aug 29 #Python
python 进程的几种创建方式详解
Aug 29 #Python
python 列表推导式使用详解
Aug 29 #Python
django 数据库连接模块解析及简单长连接改造方法
Aug 29 #Python
解决Django连接db遇到的问题
Aug 29 #Python
Python pandas实现excel工作表合并功能详解
Aug 29 #Python
You might like
php 删除记录同时删除图片文件的实现代码
2010/05/12 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
2013/06/18 PHP
php对包含html标签的字符串进行截取的函数分享
2014/06/19 PHP
详解WordPress开发中wp_title()函数的用法
2016/01/07 PHP
jquery中:input和input的区别分析
2011/07/13 Javascript
Js 冒泡事件阻止实现代码
2013/01/27 Javascript
用JavaScript实现用一个DIV来包装文本元素节点
2014/09/09 Javascript
从数据库读取数据后将其输出成html标签的三种方法
2014/10/13 Javascript
jQuery表格行上移下移和置顶的实现方法
2015/10/08 Javascript
深入浅析JavaScript中的Function类型
2016/07/09 Javascript
jQuery组件easyui对话框实现代码
2016/08/25 Javascript
Bootstrap基本插件学习笔记之按钮(21)
2016/12/08 Javascript
使用openSpeDiv方法实现Ecshop登录弹窗框效果
2017/03/13 Javascript
JS闭包用法实例分析
2017/03/27 Javascript
解决低版本的浏览器不支持es6的import问题
2018/03/09 Javascript
Vue拖拽组件开发实例详解
2018/05/11 Javascript
JS实现可视化文件上传
2018/09/08 Javascript
jQuery+PHP+Ajax实现动态数字统计展示功能
2019/12/25 jQuery
[05:20]卡尔工作室_DOTA2新手教学_DOTA2超强新手功能
2013/04/22 DOTA
用Python实现通过哈希算法检测图片重复的教程
2015/04/02 Python
用Python中的__slots__缓存资源以节省内存开销的方法
2015/04/02 Python
举例讲解Python中装饰器的用法
2015/04/27 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
python中的colorlog库使用详解
2019/07/05 Python
使用pandas读取文件的实现
2019/07/31 Python
python web框架 django wsgi原理解析
2019/08/20 Python
pandas统计重复值次数的方法实现
2021/02/20 Python
深入解析HTML5中的Blob对象的使用
2015/09/08 HTML / CSS
NUK奶瓶美国官网:NUK美国
2016/09/26 全球购物
KIKO MILANO西班牙官网:意大利领先的化妆品和护肤品品牌
2019/05/03 全球购物
都柏林通行卡/城市通票:The Dublin Pass
2020/02/16 全球购物
党支部书记先进事迹
2014/01/17 职场文书
升学宴学生答谢词
2015/01/05 职场文书
团代会邀请函
2015/02/02 职场文书
建国大业观后感
2015/06/01 职场文书
我在伊朗长大观后感
2015/06/16 职场文书