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操作Mysql实例代码教程在线版(查询手册)
Feb 18 Python
Python中音频处理库pydub的使用教程
Jun 07 Python
Python使用openpyxl读写excel文件的方法
Jun 30 Python
Python调用微信公众平台接口操作示例
Jul 08 Python
对Python中列表和数组的赋值,浅拷贝和深拷贝的实例讲解
Jun 28 Python
浅析Python 中几种字符串格式化方法及其比较
Jul 02 Python
ubuntu上安装python的实例方法
Sep 30 Python
tensorflow对图像进行拼接的例子
Feb 05 Python
Python bisect模块原理及常见实例
Jun 17 Python
正确的理解和使用Django信号(Signals)
Apr 14 Python
浅谈Python项目的服务器部署
Apr 25 Python
Python的这些库,你知道多少?
Jun 09 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将数据库中的电话号码读取出来并生成图片
2008/08/31 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
Yii查询生成器(Query Builder)用法实例教程
2014/09/04 PHP
php中return的用法实例分析
2015/02/28 PHP
twig模板常用语句实例小结
2016/02/04 PHP
js DOM的学习笔记
2011/12/22 Javascript
Web跨浏览器进程通信(Web跨域)
2013/04/17 Javascript
解决checkbox的attr(checked)一直为undefined问题
2014/06/16 Javascript
node.js中Socket.IO的进阶使用技巧
2014/11/04 Javascript
JSON字符串转换JSONObject和JSONArray的方法
2016/06/03 Javascript
纯JS实现表单验证实例
2016/12/24 Javascript
利用node实现一个批量重命名文件的函数
2017/12/21 Javascript
深入理解JavaScript和TypeScript中的class
2018/04/22 Javascript
使用webpack4编译并压缩ES6代码的方法示例
2019/04/24 Javascript
JS实现网页端猜数字小游戏
2020/03/06 Javascript
vue2路由基本用法实例分析
2020/03/06 Javascript
vant 解决tab切换插件标题样式自定义的问题
2020/11/13 Javascript
使用Python编写类UNIX系统的命令行工具的教程
2015/04/15 Python
python通过post提交数据的方法
2015/05/06 Python
Django rest framework实现分页的示例
2018/05/24 Python
Python实用技巧之利用元组代替字典并为元组元素命名
2018/07/11 Python
详解如何用TensorFlow训练和识别/分类自定义图片
2019/08/05 Python
Django实现CAS+OAuth2的方法示例
2019/10/30 Python
python异常处理和日志处理方式
2019/12/24 Python
pandas创建DataFrame的7种方法小结
2020/06/14 Python
解决PyCharm IDE环境下,执行unittest不生成测试报告的问题
2020/09/03 Python
python 实现全球IP归属地查询工具
2020/12/18 Python
HTML5离线缓存Manifest是什么
2016/03/09 HTML / CSS
英国豪华文具和皮具配件经典老品牌:Smythson(斯迈森)
2018/04/19 全球购物
双立人加拿大官网:Zwilling加拿大
2020/08/10 全球购物
大学秋游活动方案
2014/02/11 职场文书
高中教师考核方案
2014/05/18 职场文书
结婚纪念日感言
2015/08/01 职场文书
Flask使用SQLAlchemy实现持久化数据
2021/07/16 Python
MySQL去除重叠时间求时间差和的实现
2021/08/23 MySQL
一文简单了解MySQL前缀索引
2022/04/03 MySQL