例1,python实现文件压缩。
格式编码的压缩和解压缩的module,zipfile里有两个非常重要的class:ZipFile和ZipInfo。
ZipFile是主要的类,用来创建和读取zip文件而ZipInfo是存储的zip文件的每个文件的信息。
在这里需要把一个目录压缩,这就要将目录里的文件一个文件一个文件的加入,然后在使用zipfile的ZipFile类的时候,再一个一个写入压缩文件。
代码:
例3,python中使用ZIP压缩备份。
import os
import zipfile
import time
# 压缩目录
source_dir = r'F:web'
# 按时间生成文件名称
target_file = time.strftime('%Y%m%d%H%M%S') + '.zip'
myZipFile = zipfile.ZipFile(target_file, 'w' )
# 压缩所有文件,包含子目录
for root,dirs,files in os.walk(source_dir):
for vfileName in files:
fileName = os.path.join(root,vfileName)
myZipFile.write( fileName, fileName, zipfile.ZIP_DEFLATED )
# 压缩完成
myZipFile.close()
例4,解压缩文件。
import tarfile
targzfile = "xxxx.xml.gz"
outputpath = '.'
tar = tarfile.open(targzfile, "r:gz")
for tarinfo in tar:
print tarinfo.name
tar.extract(tarinfo.name, outputpath)
tar.close()
例5,向压缩文件中添加内容。
import gzip
import zipfile
file = gzip.GzipFile(strZipFile, "r")
outFile = open(strDstFile ,"w")
outFile.write(file.read())
outFile.close()