我想创建一个zip文件。将文件夹添加到zip文件,然后将一堆文件添加到该文件夹。
所以我想最终得到一个带有文件的单个文件夹的zip文件。
我不知道在zip文件中有文件夹或谷歌的东西是不是没有关于这个主题的东西。
我从这开始:def addFolderToZip(myZipFile,folder):
folder = folder.encode('ascii') #convert path to ascii for ZipFile Method
for file in glob.glob(folder+"/*"):
if os.path.isfile(file):
print file
myZipFile.write(file, os.path.basename(file), zipfile.ZIP_DEFLATED)
elif os.path.isdir(file):
addFolderToZip(myZipFile,file)
def createZipFile(filename,files,folders):
curTime=strftime("__%Y_%m_%d", time.localtime())
filename=filename+curTime;
print filename
zipFilename=utils.getFileName("files", filename+".zip")
myZipFile = zipfile.ZipFile( zipFilename, "w" ) # Open the zip file for writing
for file in files:
file = file.encode('ascii') #convert path to ascii for ZipFile Method
if os.path.isfile(file):
(filepath, filename) = os.path.split(file)
myZipFile.write( file, filename, zipfile.ZIP_DEFLATED )
for folder in folders:
addFolderToZip(myZipFile,folder)
myZipFile.close()
return (1,zipFilename)
(success,filename)=createZipFile(planName,files,folders);
删除所有文件夹并将目标文件夹(及其子文件夹)中的所有文件放入单个zip文件中。我无法让它添加整个文件夹。
如果我将路径提供给myZipFile.write中的文件夹,我会得到IOError:[Errno 13]权限被拒绝:'.. \ packed \ bin'
任何帮助都非常受欢迎。